majoplot 0.1.12__py3-none-any.whl → 0.1.13__py3-none-any.whl

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.
majoplot/domain/base.py CHANGED
@@ -205,7 +205,10 @@ class Data:
205
205
  @property
206
206
  def x_for_plot(self)->NDArray[np.floating]:
207
207
  if self._x_for_plot is None:
208
- self._x_for_plot = self.points_for_plot[:,0]
208
+ try:
209
+ self._x_for_plot = self.points_for_plot[:,0]
210
+ except IndexError:
211
+ return np.asarray(np.nan)
209
212
  return self._x_for_plot
210
213
 
211
214
  @property
@@ -217,13 +220,16 @@ class Data:
217
220
  @property
218
221
  def y_for_plot(self)->NDArray[np.floating]:
219
222
  if self._y_for_plot is None:
220
- self._y_for_plot = self.points_for_plot[:,1]
223
+ try:
224
+ self._y_for_plot = self.points_for_plot[:,1]
225
+ except IndexError:
226
+ return np.asarray(np.nan)
221
227
  return self._y_for_plot
222
228
 
223
229
  @property
224
230
  def ylim(self)->tuple[np.float64,np.float64]:
225
231
  if self._ylim is None:
226
- self._ylim = (min(self.y_for_plot), max(self.y_for_plot))
232
+ self._ylim = (np.min(self.y_for_plot), np.max(self.y_for_plot))
227
233
  return self._ylim
228
234
 
229
235
  @property
@@ -106,15 +106,14 @@ class RT:
106
106
  title=None,
107
107
  figsize=FIGSIZE,
108
108
  linestyle_cycle= ("-",),
109
-
109
+ linemarker_cycle = ("o",),
110
110
  linecolor_cycle = (
111
111
  "#515151", "#F14040", "#1A6FDF", "#37AD6B", "#B177DE",
112
112
  "#CC9900", "#00CBCC", "#7D4E4E", "#8E8E00", "#FB6501",
113
- "#6699CC", "#6FB802", "#f04f76", "#f86a5a", "#fb8c3c",
114
- "#fdbb2d", "#fcfdbf","#2B2E83", "#E6007A", "#005F5F",
115
- "#1F3D2B", "#E8C6E8","#FAB3d1",
113
+ "#6699CC", "#6FB802", "#FD0000FF", "#15ff00", "#FF9447",
114
+ "#fdbb2d", "#fcfdbf","#2B2E83", "#E6007A", "#00FFFF",
115
+ "#6DFFA7", "#FDBAFD","#FAB3d1",
116
116
  ),
117
- linemarker_cycle = ("o",),
118
117
  alpa_cycle = (1.0,),
119
118
  )
120
119
 
@@ -123,11 +123,11 @@ class RT_Resistivity:
123
123
  linecolor_cycle = (
124
124
  "#515151", "#F14040", "#1A6FDF", "#37AD6B", "#B177DE",
125
125
  "#CC9900", "#00CBCC", "#7D4E4E", "#8E8E00", "#FB6501",
126
- "#6699CC", "#6FB802", "#f04f76", "#f86a5a", "#fb8c3c",
127
- "#fdbb2d", "#fcfdbf","#2B2E83", "#E6007A", "#005F5F",
128
- "#1F3D2B", "#E8C6E8","#FAB3d1",
126
+ "#6699CC", "#6FB802", "#FD0000FF", "#15ff00", "#FF9447",
127
+ "#fdbb2d", "#fcfdbf","#2B2E83", "#E6007A", "#00FFFF",
128
+ "#6DFFA7", "#FDBAFD","#FAB3d1",
129
129
  ),
130
- linemarker_cycle = ("o","s","^","v","d","*","x","+"),
130
+ linemarker_cycle = ("o"),
131
131
  alpa_cycle = (1.0,),
132
132
  )
133
133
 
@@ -85,7 +85,32 @@ class RT_normalized:
85
85
  points=s_points[:,0:2],
86
86
  ignore_outliers=IgnoreOutlierSpec(min_gap_base=1e-4,min_gap_multiple=5),
87
87
  ))
88
-
88
+ # find common range
89
+ comm_left_margin = -273.15
90
+ comm_right_margin = 3890
91
+ for data in datas:
92
+ if data.points.size < 20:
93
+ break
94
+ data_left_margin, data_right_margin = data.xlim
95
+ if data_left_margin > comm_left_margin:
96
+ comm_left_margin = data_left_margin
97
+ if data_right_margin < comm_right_margin:
98
+ comm_right_margin = data_right_margin
99
+ comm_right_margin = round(comm_right_margin)
100
+ comm_left_margin = round(comm_left_margin)
101
+
102
+ for data in datas:
103
+ points = data.points
104
+ mask = (points[:,0] > comm_left_margin) & (points[:, 0] < comm_right_margin)
105
+ points = points[mask,:]
106
+ data.points = points
107
+ data._ignore_outliers_spec_cache = None
108
+ data._points_for_plot = None
109
+ data._x_for_plot = None
110
+ data._y_for_plot = None
111
+ data._xlim = None
112
+ data._ylim = None
113
+
89
114
  # normalize
90
115
  for data in datas:
91
116
  data: Data
@@ -129,9 +154,9 @@ class RT_normalized:
129
154
  linecolor_cycle = (
130
155
  "#515151", "#F14040", "#1A6FDF", "#37AD6B", "#B177DE",
131
156
  "#CC9900", "#00CBCC", "#7D4E4E", "#8E8E00", "#FB6501",
132
- "#6699CC", "#6FB802", "#f04f76", "#f86a5a", "#fb8c3c",
133
- "#fdbb2d", "#fcfdbf","#2B2E83", "#E6007A", "#005F5F",
134
- "#1F3D2B", "#E8C6E8","#FAB3d1",
157
+ "#6699CC", "#6FB802", "#FD0000FF", "#15ff00", "#FF9447",
158
+ "#fdbb2d", "#fcfdbf","#2B2E83", "#E6007A", "#00FFFF",
159
+ "#6DFFA7", "#FDBAFD","#FAB3d1",
135
160
  ),
136
161
  linemarker_cycle = ("o",),
137
162
  alpa_cycle = (1.0,),
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: majoplot
3
- Version: 0.1.12
3
+ Version: 0.1.13
4
4
  Summary: Automates scenario-specific data preprocessing and plotting workflows for condensed-matter physics labs (OriginLab COM backend + Matplotlib for preview).
5
5
  Project-URL: Homepage, https://github.com/ponyofshadows/majoplot
6
6
  Project-URL: Source, https://github.com/ponyofshadows/majoplot
@@ -4,15 +4,15 @@ majoplot/config.json,sha256=Fsh4B6pg6et-beyNUQ-pOu3CWd48FYIriqnOUgsaGig,183
4
4
  majoplot/app/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  majoplot/app/cli.py,sha256=L3ADrNasVBFZdmh5r6exuxJEcXJKx7_MROOM4DtjxxM,10033
6
6
  majoplot/app/gui.py,sha256=CpRg6LRI3dM2ALswnwz89KSKjONHRlfs69eO8P2VWYE,142
7
- majoplot/domain/base.py,sha256=JlkzZHSnXkh_C_l-ZxHrV7TbFcCEShD0mFnlu3lMUlc,14391
7
+ majoplot/domain/base.py,sha256=ZfW_KTSoELKvK3GZPBmZKcyhogZRVwnJx1M-T0nIN4Q,14585
8
8
  majoplot/domain/muti_axes_spec.py,sha256=pF4Yy2x12QSFny5x18gave-f-ZYuJMW-czwwsJ-6Ths,6313
9
9
  majoplot/domain/utils.py,sha256=X4Wdab6kSBA3eBVuRzpz62Wj-1WTWZp4e9TcYMkGeb8,3332
10
10
  majoplot/domain/importers/PPMS_Resistivity.py,sha256=ME58Thg_N4tFQYPfnP1ZkiOP_vzYAevF-qSuxqWoAoc,7867
11
11
  majoplot/domain/importers/VSM.py,sha256=sEZsz_3n67jtPLy1-grP9A8K1RPVnwuQLMUSrLOtZUk,3576
12
12
  majoplot/domain/importers/XRD.py,sha256=_CN3jKLn4vZ3Oa2cm3IcH05R_mrao2so3VTVKVEND98,2840
13
- majoplot/domain/scenarios/PPMS_Resistivity/RT.py,sha256=DzIOqy8BlsHWKMLc6a-LF-4lwF3p51Vs3rZcTXRW2UA,4684
14
- majoplot/domain/scenarios/PPMS_Resistivity/RT_Resistivity.py,sha256=Pq5ANx0_lk6m5trJwxK8lywMzHubrfXEcLysMfhii6U,5462
15
- majoplot/domain/scenarios/PPMS_Resistivity/RT_normalized.py,sha256=UnJqY3KCPDl66rLWxQ914pmW4s4_Qmv82HQgupO8zxg,5458
13
+ majoplot/domain/scenarios/PPMS_Resistivity/RT.py,sha256=GnktsRmNrshuVQoQD8CvVloStS1Ljjz3qazYL0N1WqE,4685
14
+ majoplot/domain/scenarios/PPMS_Resistivity/RT_Resistivity.py,sha256=eTQrIocFh8H6i3HT66JutYRz3I7QlHosYekSeIN-J6k,5436
15
+ majoplot/domain/scenarios/PPMS_Resistivity/RT_normalized.py,sha256=I4QjrZ4AaXikXI_lR_spmfBBaHKBpvNT_6lYI1goidY,6455
16
16
  majoplot/domain/scenarios/VSM/ChiT.py,sha256=NcPxf1-OIFrRNBo1uDaU0LzpaKXU_EUDDo9_78Pk2Vs,6643
17
17
  majoplot/domain/scenarios/VSM/ChiT_onlyZFC.py,sha256=IFhw6kCha0OxDZ5AgWeCb9UwSFJ1JOrjxQ3N2lH4Kis,6568
18
18
  majoplot/domain/scenarios/VSM/MT.py,sha256=lnqEi6sw6pzIOaGoqkC5OWJQzROWXL32-YvtOH__Rvg,4550
@@ -25,8 +25,8 @@ majoplot/gui/main.py,sha256=v5pyi-Gb26o_lmVM4GaM_Tt_-1rTTKVRekgOcBochA0,20291
25
25
  majoplot/infra/plotters/matplot.py,sha256=DE3nCfFjL9FxNbuEgggJyXlolkP1nWKmNwJElt1bgHw,12281
26
26
  majoplot/infra/plotters/origin.py,sha256=xB80d216pmo_mXo5Lx8sGQrjQC6N0NljzzoMNG37w1g,39034
27
27
  majoplot/infra/plotters/origin_utils/originlab_type_library.py,sha256=zxOxF7nB57zwnXSaFSoCUV64ZTHhDBDRv57exatiBoU,37398
28
- majoplot-0.1.12.dist-info/METADATA,sha256=YThy-qfUqKVRb5MyaVBgVNo-ySaCV4u1mkdkACo6Gmc,2878
29
- majoplot-0.1.12.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
30
- majoplot-0.1.12.dist-info/entry_points.txt,sha256=zEiPXZtNyJQMvVS-Zl9psx8SpTafOcs8F9S8xGtOaBM,52
31
- majoplot-0.1.12.dist-info/licenses/LICENSE,sha256=fj2NqLupbHWfA5W-8tqCpT5yjO8A4F1HcKnt_maww20,1070
32
- majoplot-0.1.12.dist-info/RECORD,,
28
+ majoplot-0.1.13.dist-info/METADATA,sha256=z6mKTNCFXhMsqJKYLdSE-_wUw6374459dfEfg-En0-w,2878
29
+ majoplot-0.1.13.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
30
+ majoplot-0.1.13.dist-info/entry_points.txt,sha256=zEiPXZtNyJQMvVS-Zl9psx8SpTafOcs8F9S8xGtOaBM,52
31
+ majoplot-0.1.13.dist-info/licenses/LICENSE,sha256=fj2NqLupbHWfA5W-8tqCpT5yjO8A4F1HcKnt_maww20,1070
32
+ majoplot-0.1.13.dist-info/RECORD,,