modusa 0.3.55__tar.gz → 0.3.56__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. {modusa-0.3.55 → modusa-0.3.56}/PKG-INFO +1 -1
  2. {modusa-0.3.55 → modusa-0.3.56}/pyproject.toml +1 -1
  3. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/tools/plotter.py +21 -5
  4. {modusa-0.3.55 → modusa-0.3.56}/LICENSE.md +0 -0
  5. {modusa-0.3.55 → modusa-0.3.56}/README.md +0 -0
  6. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/.DS_Store +0 -0
  7. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/__init__.py +0 -0
  8. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/config.py +0 -0
  9. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/decorators.py +0 -0
  10. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/devtools/generate_docs_source.py +0 -0
  11. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/devtools/generate_template.py +0 -0
  12. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/devtools/list_authors.py +0 -0
  13. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/devtools/list_plugins.py +0 -0
  14. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/devtools/main.py +0 -0
  15. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/devtools/templates/generator.py +0 -0
  16. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/devtools/templates/io.py +0 -0
  17. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/devtools/templates/model.py +0 -0
  18. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/devtools/templates/plugin.py +0 -0
  19. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/devtools/templates/test.py +0 -0
  20. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/devtools/templates/tool.py +0 -0
  21. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/fonts/NotoSansDevanagari-Regular.ttf +0 -0
  22. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/generators/__init__.py +0 -0
  23. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/generators/audio.py +0 -0
  24. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/generators/audio_waveforms.py +0 -0
  25. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/generators/base.py +0 -0
  26. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/generators/ftds.py +0 -0
  27. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/generators/s1d.py +0 -0
  28. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/generators/s2d.py +0 -0
  29. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/generators/s_ax.py +0 -0
  30. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/generators/t_ax.py +0 -0
  31. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/generators/tds.py +0 -0
  32. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/models/__init__.py +0 -0
  33. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/models/__pycache__/signal1D.cpython-312.pyc.4443461152 +0 -0
  34. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/models/audio.py +0 -0
  35. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/models/base.py +0 -0
  36. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/models/data.py +0 -0
  37. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/models/ftds.py +0 -0
  38. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/models/s1d.py +0 -0
  39. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/models/s2d.py +0 -0
  40. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/models/s_ax.py +0 -0
  41. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/models/t_ax.py +0 -0
  42. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/models/tds.py +0 -0
  43. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/plugins/__init__.py +0 -0
  44. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/plugins/base.py +0 -0
  45. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/tools/__init__.py +0 -0
  46. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/tools/_plotter_old.py +0 -0
  47. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/tools/ann_loader.py +0 -0
  48. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/tools/audio_converter.py +0 -0
  49. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/tools/audio_loader.py +0 -0
  50. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/tools/audio_player.py +0 -0
  51. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/tools/audio_recorder.py +0 -0
  52. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/tools/base.py +0 -0
  53. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/tools/math_ops.py +0 -0
  54. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/tools/youtube_downloader.py +0 -0
  55. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/utils/.DS_Store +0 -0
  56. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/utils/__init__.py +0 -0
  57. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/utils/config.py +0 -0
  58. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/utils/excp.py +0 -0
  59. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/utils/logger.py +0 -0
  60. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/utils/np_func_cat.py +0 -0
  61. {modusa-0.3.55 → modusa-0.3.56}/src/modusa/utils/plot.py +0 -0
  62. {modusa-0.3.55 → modusa-0.3.56}/tests/__init__.py +0 -0
  63. {modusa-0.3.55 → modusa-0.3.56}/tests/data/song1.mp3 +0 -0
  64. {modusa-0.3.55 → modusa-0.3.56}/tests/data/song1.wav +0 -0
  65. {modusa-0.3.55 → modusa-0.3.56}/tests/test_generators/audio_waveform.py +0 -0
  66. {modusa-0.3.55 → modusa-0.3.56}/tests/test_generators/test_audio.py +0 -0
  67. {modusa-0.3.55 → modusa-0.3.56}/tests/test_generators/test_ftds.py +0 -0
  68. {modusa-0.3.55 → modusa-0.3.56}/tests/test_generators/test_s1d.py +0 -0
  69. {modusa-0.3.55 → modusa-0.3.56}/tests/test_generators/test_s2d.py +0 -0
  70. {modusa-0.3.55 → modusa-0.3.56}/tests/test_generators/test_s_ax.py +0 -0
  71. {modusa-0.3.55 → modusa-0.3.56}/tests/test_generators/test_signal.py +0 -0
  72. {modusa-0.3.55 → modusa-0.3.56}/tests/test_generators/test_signal_generator.py +0 -0
  73. {modusa-0.3.55 → modusa-0.3.56}/tests/test_generators/test_t_ax.py +0 -0
  74. {modusa-0.3.55 → modusa-0.3.56}/tests/test_generators/test_tds.py +0 -0
  75. {modusa-0.3.55 → modusa-0.3.56}/tests/test_io/audio_player.py +0 -0
  76. {modusa-0.3.55 → modusa-0.3.56}/tests/test_io/plotter.py +0 -0
  77. {modusa-0.3.55 → modusa-0.3.56}/tests/test_models/test_data.py +0 -0
  78. {modusa-0.3.55 → modusa-0.3.56}/tests/test_models/test_t_ax.py +0 -0
  79. {modusa-0.3.55 → modusa-0.3.56}/tests/test_plugins/youtube_audio_loader.py +0 -0
  80. {modusa-0.3.55 → modusa-0.3.56}/tests/test_signals/frequency_domain_signal.py +0 -0
  81. {modusa-0.3.55 → modusa-0.3.56}/tests/test_signals/spectrogram.py +0 -0
  82. {modusa-0.3.55 → modusa-0.3.56}/tests/test_signals/test_axis.py +0 -0
  83. {modusa-0.3.55 → modusa-0.3.56}/tests/test_signals/test_feature_time_domain_signal.py +0 -0
  84. {modusa-0.3.55 → modusa-0.3.56}/tests/test_signals/test_frequency_time_domain_signal.py +0 -0
  85. {modusa-0.3.55 → modusa-0.3.56}/tests/test_signals/test_signal1D.py +0 -0
  86. {modusa-0.3.55 → modusa-0.3.56}/tests/test_signals/test_signal2D.py +0 -0
  87. {modusa-0.3.55 → modusa-0.3.56}/tests/test_signals/test_time_domain_signal.py +0 -0
  88. {modusa-0.3.55 → modusa-0.3.56}/tests/test_signals/test_u_ax.py +0 -0
  89. {modusa-0.3.55 → modusa-0.3.56}/tests/test_signals/test_window_signal.py +0 -0
  90. {modusa-0.3.55 → modusa-0.3.56}/tests/test_signals/time_domain_signal.py +0 -0
  91. {modusa-0.3.55 → modusa-0.3.56}/tests/test_tools/test_audio_converter.py +0 -0
  92. {modusa-0.3.55 → modusa-0.3.56}/tests/test_tools/test_fourier_tranform.py +0 -0
  93. {modusa-0.3.55 → modusa-0.3.56}/tests/test_tools/test_math_ops.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: modusa
3
- Version: 0.3.55
3
+ Version: 0.3.56
4
4
  Summary: A modular signal analysis python library.
5
5
  Author-Email: Ankit Anand <ankit0.anand0@gmail.com>
6
6
  License: MIT
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "modusa"
3
- version = "0.3.55"
3
+ version = "0.3.56"
4
4
  description = "A modular signal analysis python library."
5
5
  authors = [
6
6
  { name = "Ankit Anand", email = "ankit0.anand0@gmail.com" },
@@ -72,7 +72,14 @@ class Fig:
72
72
 
73
73
  return colors[self._curr_color_idx]
74
74
 
75
- def _calculate_extent(self, x, y):
75
+ def _calculate_extent(self, x, y, o):
76
+ """
77
+
78
+ Parameters
79
+ ----------
80
+ o: str
81
+ - Origin
82
+ """
76
83
  # Handle spacing safely
77
84
  if len(x) > 1:
78
85
  dx = x[1] - x[0]
@@ -83,7 +90,10 @@ class Fig:
83
90
  else:
84
91
  dy = 1 # Default spacing for single value
85
92
 
86
- return [x[0] - dx / 2, x[-1] + dx / 2, y[0] - dy / 2, y[-1] + dy / 2]
93
+ if o == "lower":
94
+ return [x[0] - dx / 2, x[-1] + dx / 2, y[0] - dy / 2, y[-1] + dy / 2]
95
+ else:
96
+ return [x[0] - dx / 2, x[-1] + dx / 2, y[-1] + dy / 2, y[0] - dy / 2]
87
97
 
88
98
 
89
99
  def _generate_subplots(self, arrangement):
@@ -203,7 +213,7 @@ class Fig:
203
213
 
204
214
  if ylim is not None: curr_row[0].set_ylim(ylim)
205
215
 
206
- def add_matrix(self, M, y=None, x=None, c="gray_r", o="lower", label=None, ylabel=None, ylim=None, cbar=True, ax=None):
216
+ def add_matrix(self, M, y=None, x=None, c="gray_r", o="upper", label=None, ylabel=None, ylim=None, cbar=True, ax=None):
207
217
  """
208
218
  Add matrix to the figure.
209
219
 
@@ -248,12 +258,18 @@ class Fig:
248
258
 
249
259
  curr_row = self._get_curr_row() if ax is None else self._axs[ax]
250
260
 
251
- extent = self._calculate_extent(x, y)
261
+ extent = self._calculate_extent(x, y, o)
262
+ print(extent)
263
+
252
264
  im = curr_row[0].imshow(M, aspect="auto", origin=o, cmap=c, extent=extent)
253
265
 
254
266
  if ylabel is not None: curr_row[0].set_ylabel(ylabel)
255
267
 
256
- if ylim is not None: curr_row[0].set_ylim(ylim)
268
+ if ylim is not None:
269
+ if o == "lower":
270
+ curr_row[0].set_ylim(ylim)
271
+ elif o == "upper":
272
+ curr_row[0].set_ylim(ylim[::-1])
257
273
 
258
274
  if cbar is True:
259
275
  cbar = plt.colorbar(im, cax=curr_row[1])
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes