modusa 0.3.48__tar.gz → 0.3.50__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.48 → modusa-0.3.50}/PKG-INFO +1 -1
  2. {modusa-0.3.48 → modusa-0.3.50}/pyproject.toml +1 -1
  3. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/tools/plotter.py +12 -3
  4. {modusa-0.3.48 → modusa-0.3.50}/LICENSE.md +0 -0
  5. {modusa-0.3.48 → modusa-0.3.50}/README.md +0 -0
  6. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/.DS_Store +0 -0
  7. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/__init__.py +0 -0
  8. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/config.py +0 -0
  9. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/decorators.py +0 -0
  10. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/devtools/generate_docs_source.py +0 -0
  11. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/devtools/generate_template.py +0 -0
  12. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/devtools/list_authors.py +0 -0
  13. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/devtools/list_plugins.py +0 -0
  14. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/devtools/main.py +0 -0
  15. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/devtools/templates/generator.py +0 -0
  16. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/devtools/templates/io.py +0 -0
  17. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/devtools/templates/model.py +0 -0
  18. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/devtools/templates/plugin.py +0 -0
  19. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/devtools/templates/test.py +0 -0
  20. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/devtools/templates/tool.py +0 -0
  21. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/fonts/NotoSansDevanagari-Regular.ttf +0 -0
  22. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/generators/__init__.py +0 -0
  23. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/generators/audio.py +0 -0
  24. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/generators/audio_waveforms.py +0 -0
  25. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/generators/base.py +0 -0
  26. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/generators/ftds.py +0 -0
  27. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/generators/s1d.py +0 -0
  28. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/generators/s2d.py +0 -0
  29. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/generators/s_ax.py +0 -0
  30. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/generators/t_ax.py +0 -0
  31. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/generators/tds.py +0 -0
  32. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/models/__init__.py +0 -0
  33. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/models/__pycache__/signal1D.cpython-312.pyc.4443461152 +0 -0
  34. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/models/audio.py +0 -0
  35. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/models/base.py +0 -0
  36. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/models/data.py +0 -0
  37. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/models/ftds.py +0 -0
  38. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/models/s1d.py +0 -0
  39. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/models/s2d.py +0 -0
  40. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/models/s_ax.py +0 -0
  41. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/models/t_ax.py +0 -0
  42. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/models/tds.py +0 -0
  43. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/plugins/__init__.py +0 -0
  44. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/plugins/base.py +0 -0
  45. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/tools/__init__.py +0 -0
  46. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/tools/_plotter_old.py +0 -0
  47. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/tools/ann_loader.py +0 -0
  48. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/tools/audio_converter.py +0 -0
  49. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/tools/audio_loader.py +0 -0
  50. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/tools/audio_player.py +0 -0
  51. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/tools/audio_recorder.py +0 -0
  52. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/tools/base.py +0 -0
  53. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/tools/math_ops.py +0 -0
  54. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/tools/youtube_downloader.py +0 -0
  55. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/utils/.DS_Store +0 -0
  56. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/utils/__init__.py +0 -0
  57. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/utils/config.py +0 -0
  58. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/utils/excp.py +0 -0
  59. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/utils/logger.py +0 -0
  60. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/utils/np_func_cat.py +0 -0
  61. {modusa-0.3.48 → modusa-0.3.50}/src/modusa/utils/plot.py +0 -0
  62. {modusa-0.3.48 → modusa-0.3.50}/tests/__init__.py +0 -0
  63. {modusa-0.3.48 → modusa-0.3.50}/tests/data/song1.mp3 +0 -0
  64. {modusa-0.3.48 → modusa-0.3.50}/tests/data/song1.wav +0 -0
  65. {modusa-0.3.48 → modusa-0.3.50}/tests/test_generators/audio_waveform.py +0 -0
  66. {modusa-0.3.48 → modusa-0.3.50}/tests/test_generators/test_audio.py +0 -0
  67. {modusa-0.3.48 → modusa-0.3.50}/tests/test_generators/test_ftds.py +0 -0
  68. {modusa-0.3.48 → modusa-0.3.50}/tests/test_generators/test_s1d.py +0 -0
  69. {modusa-0.3.48 → modusa-0.3.50}/tests/test_generators/test_s2d.py +0 -0
  70. {modusa-0.3.48 → modusa-0.3.50}/tests/test_generators/test_s_ax.py +0 -0
  71. {modusa-0.3.48 → modusa-0.3.50}/tests/test_generators/test_signal.py +0 -0
  72. {modusa-0.3.48 → modusa-0.3.50}/tests/test_generators/test_signal_generator.py +0 -0
  73. {modusa-0.3.48 → modusa-0.3.50}/tests/test_generators/test_t_ax.py +0 -0
  74. {modusa-0.3.48 → modusa-0.3.50}/tests/test_generators/test_tds.py +0 -0
  75. {modusa-0.3.48 → modusa-0.3.50}/tests/test_io/audio_player.py +0 -0
  76. {modusa-0.3.48 → modusa-0.3.50}/tests/test_io/plotter.py +0 -0
  77. {modusa-0.3.48 → modusa-0.3.50}/tests/test_models/test_data.py +0 -0
  78. {modusa-0.3.48 → modusa-0.3.50}/tests/test_models/test_t_ax.py +0 -0
  79. {modusa-0.3.48 → modusa-0.3.50}/tests/test_plugins/youtube_audio_loader.py +0 -0
  80. {modusa-0.3.48 → modusa-0.3.50}/tests/test_signals/frequency_domain_signal.py +0 -0
  81. {modusa-0.3.48 → modusa-0.3.50}/tests/test_signals/spectrogram.py +0 -0
  82. {modusa-0.3.48 → modusa-0.3.50}/tests/test_signals/test_axis.py +0 -0
  83. {modusa-0.3.48 → modusa-0.3.50}/tests/test_signals/test_feature_time_domain_signal.py +0 -0
  84. {modusa-0.3.48 → modusa-0.3.50}/tests/test_signals/test_frequency_time_domain_signal.py +0 -0
  85. {modusa-0.3.48 → modusa-0.3.50}/tests/test_signals/test_signal1D.py +0 -0
  86. {modusa-0.3.48 → modusa-0.3.50}/tests/test_signals/test_signal2D.py +0 -0
  87. {modusa-0.3.48 → modusa-0.3.50}/tests/test_signals/test_time_domain_signal.py +0 -0
  88. {modusa-0.3.48 → modusa-0.3.50}/tests/test_signals/test_u_ax.py +0 -0
  89. {modusa-0.3.48 → modusa-0.3.50}/tests/test_signals/test_window_signal.py +0 -0
  90. {modusa-0.3.48 → modusa-0.3.50}/tests/test_signals/time_domain_signal.py +0 -0
  91. {modusa-0.3.48 → modusa-0.3.50}/tests/test_tools/test_audio_converter.py +0 -0
  92. {modusa-0.3.48 → modusa-0.3.50}/tests/test_tools/test_fourier_tranform.py +0 -0
  93. {modusa-0.3.48 → modusa-0.3.50}/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.48
3
+ Version: 0.3.50
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.48"
3
+ version = "0.3.50"
4
4
  description = "A modular signal analysis python library."
5
5
  authors = [
6
6
  { name = "Ankit Anand", email = "ankit0.anand0@gmail.com" },
@@ -1103,7 +1103,7 @@ class Fig:
1103
1103
  label: str
1104
1104
  - Label for the plot.
1105
1105
  - Legend will use this.
1106
- - Default: "Signal"
1106
+ - Default: None
1107
1107
  ylabel: str
1108
1108
  - y-label for the plot.
1109
1109
  - Default: None
@@ -1159,7 +1159,7 @@ class Fig:
1159
1159
  label: str
1160
1160
  - Label for the event type.
1161
1161
  - This will appear in the legend.
1162
- - Default: "Event label"
1162
+ - Default: None
1163
1163
  ax: int
1164
1164
  - Which specific axis to plot (1, 2, 3, ...)
1165
1165
  - None
@@ -1188,7 +1188,7 @@ class Fig:
1188
1188
  else:
1189
1189
  curr_row[0].axvline(x=event, color=c, linestyle=ls, linewidth=lw)
1190
1190
 
1191
- def add_annotation(self, ann, ax=None):
1191
+ def add_annotation(self, ann, label=None, ax=None):
1192
1192
  """
1193
1193
  Add annotation to the figure.
1194
1194
 
@@ -1197,6 +1197,10 @@ class Fig:
1197
1197
  ann : list[tuple[Number, Number, str]] | None
1198
1198
  - A list of annotation spans. Each tuple should be (start, end, label).
1199
1199
  - Default: None (no annotations).
1200
+ label: str
1201
+ - Label for the annotation type.
1202
+ - This will appear to the right of the aux plot.
1203
+ - Default: None
1200
1204
  ax: int
1201
1205
  - Which specific axis to plot (1, 2, 3, ...)
1202
1206
  - None
@@ -1248,6 +1252,11 @@ class Fig:
1248
1252
 
1249
1253
  text_obj.set_clip_path(rect)
1250
1254
 
1255
+ if label is not None:
1256
+ curr_row[0].set_ylabel(label, rotation=0, ha="center", va="center")
1257
+ curr_row[0].yaxis.set_label_position("right")
1258
+ curr_row[0].yaxis.set_label_coords(1.05, 0.75)
1259
+
1251
1260
  def add_legend(self, ypos=1.0):
1252
1261
  """
1253
1262
  Add legend to the figure.
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes