batplot 1.8.1__py3-none-any.whl → 1.8.2__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.

Potentially problematic release.


This version of batplot might be problematic. Click here for more details.

Files changed (38) hide show
  1. batplot/__init__.py +1 -1
  2. batplot/args.py +2 -0
  3. batplot/batplot.py +44 -4
  4. batplot/cpc_interactive.py +10 -0
  5. batplot/interactive.py +10 -0
  6. batplot/modes.py +12 -12
  7. batplot/operando_ec_interactive.py +4 -4
  8. batplot/session.py +17 -0
  9. batplot/version_check.py +1 -1
  10. {batplot-1.8.1.dist-info → batplot-1.8.2.dist-info}/METADATA +1 -1
  11. {batplot-1.8.1.dist-info → batplot-1.8.2.dist-info}/RECORD +38 -15
  12. {batplot-1.8.1.dist-info → batplot-1.8.2.dist-info}/top_level.txt +1 -0
  13. batplot_backup_20251221_101150/__init__.py +5 -0
  14. batplot_backup_20251221_101150/args.py +625 -0
  15. batplot_backup_20251221_101150/batch.py +1176 -0
  16. batplot_backup_20251221_101150/batplot.py +3589 -0
  17. batplot_backup_20251221_101150/cif.py +823 -0
  18. batplot_backup_20251221_101150/cli.py +149 -0
  19. batplot_backup_20251221_101150/color_utils.py +547 -0
  20. batplot_backup_20251221_101150/config.py +198 -0
  21. batplot_backup_20251221_101150/converters.py +204 -0
  22. batplot_backup_20251221_101150/cpc_interactive.py +4409 -0
  23. batplot_backup_20251221_101150/electrochem_interactive.py +4520 -0
  24. batplot_backup_20251221_101150/interactive.py +3894 -0
  25. batplot_backup_20251221_101150/manual.py +323 -0
  26. batplot_backup_20251221_101150/modes.py +799 -0
  27. batplot_backup_20251221_101150/operando.py +603 -0
  28. batplot_backup_20251221_101150/operando_ec_interactive.py +5487 -0
  29. batplot_backup_20251221_101150/plotting.py +228 -0
  30. batplot_backup_20251221_101150/readers.py +2607 -0
  31. batplot_backup_20251221_101150/session.py +2951 -0
  32. batplot_backup_20251221_101150/style.py +1441 -0
  33. batplot_backup_20251221_101150/ui.py +790 -0
  34. batplot_backup_20251221_101150/utils.py +1046 -0
  35. batplot_backup_20251221_101150/version_check.py +253 -0
  36. {batplot-1.8.1.dist-info → batplot-1.8.2.dist-info}/WHEEL +0 -0
  37. {batplot-1.8.1.dist-info → batplot-1.8.2.dist-info}/entry_points.txt +0 -0
  38. {batplot-1.8.1.dist-info → batplot-1.8.2.dist-info}/licenses/LICENSE +0 -0
batplot/__init__.py CHANGED
@@ -1,5 +1,5 @@
1
1
  """batplot: Interactive plotting for battery data visualization."""
2
2
 
3
- __version__ = "1.8.1"
3
+ __version__ = "1.8.2"
4
4
 
5
5
  __all__ = ["__version__"]
batplot/args.py CHANGED
@@ -152,6 +152,8 @@ def _print_general_help() -> None:
152
152
  " batplot --all style.bps # Batch with style: apply style.bps to all files\n"
153
153
  " batplot --all ./Style/style.bps # Batch with style: use relative path to style file\n"
154
154
  " batplot --all config.bpsg # Batch with style+geom: apply to all XY files\n"
155
+ " batplot file1.xy:1.54 file2.qye --stack # Stack mode: stack all files vertically\n"
156
+ " batplot file1.xy:1.54 file2.qye structure.cif --stack --i # Stack mode: stack all files vertically with cif ticks\n"
155
157
  " batplot file1.qye file2.qye style.bps # Apply style to multiple files and export\n"
156
158
  " batplot file1.xy file2.xye ./Style/style.bps # Apply style from relative path\n\n"
157
159
  " [Electrochemistry]\n"
batplot/batplot.py CHANGED
@@ -1890,10 +1890,31 @@ def batplot_main() -> int:
1890
1890
  x_full_list = []
1891
1891
  raw_y_full_list = []
1892
1892
  offsets_list = []
1893
- tick_state = {
1894
- 'bx': True,'tx': False,'ly': True,'ry': False,
1895
- 'mbx': False,'mtx': False,'mly': False,'mry': False
1896
- }
1893
+ # Load tick_state from wasd_state if available (version 2+), otherwise use defaults
1894
+ wasd_loaded = sess.get('wasd_state')
1895
+ if wasd_loaded and isinstance(wasd_loaded, dict):
1896
+ # Convert wasd_state to tick_state format
1897
+ tick_state = {}
1898
+ for side_key, prefix in [('top', 't'), ('bottom', 'b'), ('left', 'l'), ('right', 'r')]:
1899
+ s = wasd_loaded.get(side_key, {})
1900
+ tick_state[f'{prefix}_ticks'] = bool(s.get('ticks', side_key in ('bottom', 'left')))
1901
+ tick_state[f'{prefix}_labels'] = bool(s.get('labels', side_key in ('bottom', 'left')))
1902
+ tick_state[f'm{prefix}x' if prefix in 'tb' else f'm{prefix}y'] = bool(s.get('minor', False))
1903
+ # Legacy keys for backward compatibility
1904
+ tick_state['bx'] = tick_state.get('b_ticks', True)
1905
+ tick_state['tx'] = tick_state.get('t_ticks', False)
1906
+ tick_state['ly'] = tick_state.get('l_ticks', True)
1907
+ tick_state['ry'] = tick_state.get('r_ticks', False)
1908
+ tick_state['mbx'] = tick_state.get('mbx', False)
1909
+ tick_state['mtx'] = tick_state.get('mtx', False)
1910
+ tick_state['mly'] = tick_state.get('mly', False)
1911
+ tick_state['mry'] = tick_state.get('mry', False)
1912
+ else:
1913
+ # Fallback to legacy tick_state or defaults
1914
+ tick_state = sess.get('tick_state', {
1915
+ 'bx': True,'tx': False,'ly': True,'ry': False,
1916
+ 'mbx': False,'mtx': False,'mly': False,'mry': False
1917
+ })
1897
1918
  saved_stack = bool(sess.get('args_subset', {}).get('stack', False))
1898
1919
  # Pull data
1899
1920
  # --- Robust reconstruction of stored curves ---
@@ -1954,8 +1975,27 @@ def batplot_main() -> int:
1954
1975
  pass
1955
1976
  labels_list[:] = sess.get('labels', [f"Curve {i+1}" for i in range(len(y_data_list))])
1956
1977
  delta = sess.get('delta', 0.0)
1978
+ # Apply tick state (labels visibility) BEFORE setting axis labels
1979
+ try:
1980
+ ax.tick_params(axis='x',
1981
+ bottom=tick_state.get('b_ticks', tick_state.get('bx', True)),
1982
+ labelbottom=tick_state.get('b_labels', tick_state.get('bx', True)),
1983
+ top=tick_state.get('t_ticks', tick_state.get('tx', False)),
1984
+ labeltop=tick_state.get('t_labels', tick_state.get('tx', False)))
1985
+ ax.tick_params(axis='y',
1986
+ left=tick_state.get('l_ticks', tick_state.get('ly', True)),
1987
+ labelleft=tick_state.get('l_labels', tick_state.get('ly', True)),
1988
+ right=tick_state.get('r_ticks', tick_state.get('ry', False)),
1989
+ labelright=tick_state.get('r_labels', tick_state.get('ry', False)))
1990
+ except Exception:
1991
+ pass
1957
1992
  ax.set_xlabel(sess.get('axis', {}).get('xlabel', 'X'))
1958
1993
  ax.set_ylabel(sess.get('axis', {}).get('ylabel', 'Intensity'))
1994
+ # Store tick_state on axes for interactive menu
1995
+ try:
1996
+ ax._saved_tick_state = dict(tick_state)
1997
+ except Exception:
1998
+ pass
1959
1999
 
1960
2000
  # Restore normalization ranges (if saved)
1961
2001
  axis_cfg = sess.get('axis', {})
@@ -3458,6 +3458,11 @@ def cpc_interactive_menu(fig, ax, ax2, sc_charge, sc_discharge, sc_eff, file_dat
3458
3458
  if not cmd:
3459
3459
  continue
3460
3460
  if cmd == 'q':
3461
+ # Update ax._saved_tick_state before exiting so changes are persisted
3462
+ try:
3463
+ ax._saved_tick_state = dict(tick_state)
3464
+ except Exception:
3465
+ pass
3461
3466
  break
3462
3467
  if cmd == 'i':
3463
3468
  # Invert tick direction (toggle between 'out' and 'in')
@@ -3779,6 +3784,11 @@ def cpc_interactive_menu(fig, ax, ax2, sc_charge, sc_discharge, sc_eff, file_dat
3779
3784
  tick_state['mry'] = bool(wasd['right']['minor'])
3780
3785
  if changed:
3781
3786
  push_state("wasd-toggle")
3787
+ # Update ax._saved_tick_state so dump_session can read it
3788
+ try:
3789
+ ax._saved_tick_state = dict(tick_state)
3790
+ except Exception:
3791
+ pass
3782
3792
  _apply_wasd(changed_sides if changed_sides else None)
3783
3793
  # Single draw at the end after all positioning is complete
3784
3794
  try:
batplot/interactive.py CHANGED
@@ -3313,6 +3313,11 @@ def interactive_menu(fig, ax, y_data_list, x_data_list, labels, orig_y,
3313
3313
  if not cmd:
3314
3314
  continue
3315
3315
  if cmd == 'q':
3316
+ # Update ax._saved_tick_state before exiting so changes are persisted
3317
+ try:
3318
+ ax._saved_tick_state = dict(tick_state)
3319
+ except Exception:
3320
+ pass
3316
3321
  break
3317
3322
  if cmd == 'i':
3318
3323
  # Invert tick direction (toggle between 'out' and 'in')
@@ -3584,6 +3589,11 @@ def interactive_menu(fig, ax, y_data_list, x_data_list, labels, orig_y,
3584
3589
  continue
3585
3590
  # Unknown code
3586
3591
  print(f"Unknown code: {p}")
3592
+ # After tick toggles, update ax._saved_tick_state so dump_session can read it
3593
+ try:
3594
+ ax._saved_tick_state = dict(tick_state)
3595
+ except Exception:
3596
+ pass
3587
3597
  # After tick toggles, update visibility and reposition ALL axis labels for independence
3588
3598
  update_tick_visibility()
3589
3599
  update_labels(ax, y_data_list, label_text_objects, args.stack, getattr(fig, '_stack_label_at_bottom', False))
batplot/modes.py CHANGED
@@ -280,8 +280,8 @@ def handle_cv_mode(args) -> int:
280
280
  ax.set_xlabel('Current (mA)', labelpad=8.0)
281
281
  ax.set_ylabel('Voltage (V)', labelpad=8.0)
282
282
  else:
283
- ax.set_xlabel('Voltage (V)', labelpad=8.0)
284
- ax.set_ylabel('Current (mA)', labelpad=8.0)
283
+ ax.set_xlabel('Voltage (V)', labelpad=8.0)
284
+ ax.set_ylabel('Current (mA)', labelpad=8.0)
285
285
  legend = ax.legend(title='Cycle')
286
286
  legend.get_title().set_fontsize('medium')
287
287
  # Adjust margins to prevent label clipping
@@ -642,8 +642,8 @@ def handle_gc_mode(args) -> int:
642
642
  ln_c, = ax.plot(y_b, x_b, '-', color=base_colors[(cyc-1) % len(base_colors)],
643
643
  linewidth=2.0, label=str(cyc), alpha=0.8)
644
644
  else:
645
- ln_c, = ax.plot(x_b, y_b, '-', color=base_colors[(cyc-1) % len(base_colors)],
646
- linewidth=2.0, label=str(cyc), alpha=0.8)
645
+ ln_c, = ax.plot(x_b, y_b, '-', color=base_colors[(cyc-1) % len(base_colors)],
646
+ linewidth=2.0, label=str(cyc), alpha=0.8)
647
647
  else:
648
648
  ln_c = None
649
649
  mask_d = (cyc_int == cyc) & discharge_mask
@@ -656,8 +656,8 @@ def handle_gc_mode(args) -> int:
656
656
  ln_d, = ax.plot(yd_b, xd_b, '-', color=base_colors[(cyc-1) % len(base_colors)],
657
657
  linewidth=2.0, label=lbl, alpha=0.8)
658
658
  else:
659
- ln_d, = ax.plot(xd_b, yd_b, '-', color=base_colors[(cyc-1) % len(base_colors)],
660
- linewidth=2.0, label=lbl, alpha=0.8)
659
+ ln_d, = ax.plot(xd_b, yd_b, '-', color=base_colors[(cyc-1) % len(base_colors)],
660
+ linewidth=2.0, label=lbl, alpha=0.8)
661
661
  else:
662
662
  ln_d = None
663
663
  cycle_lines[cyc] = {"charge": ln_c, "discharge": ln_d}
@@ -677,8 +677,8 @@ def handle_gc_mode(args) -> int:
677
677
  ln_c, = ax.plot(y_b, x_b, '-', color=base_colors[(cyc-1) % len(base_colors)],
678
678
  linewidth=2.0, label=str(cyc), alpha=0.8)
679
679
  else:
680
- ln_c, = ax.plot(x_b, y_b, '-', color=base_colors[(cyc-1) % len(base_colors)],
681
- linewidth=2.0, label=str(cyc), alpha=0.8)
680
+ ln_c, = ax.plot(x_b, y_b, '-', color=base_colors[(cyc-1) % len(base_colors)],
681
+ linewidth=2.0, label=str(cyc), alpha=0.8)
682
682
  ln_d = None
683
683
  if i < len(dch_blocks):
684
684
  a, b = dch_blocks[i]
@@ -690,8 +690,8 @@ def handle_gc_mode(args) -> int:
690
690
  ln_d, = ax.plot(yd_b, xd_b, '-', color=base_colors[(cyc-1) % len(base_colors)],
691
691
  linewidth=2.0, label=lbl, alpha=0.8)
692
692
  else:
693
- ln_d, = ax.plot(xd_b, yd_b, '-', color=base_colors[(cyc-1) % len(base_colors)],
694
- linewidth=2.0, label=lbl, alpha=0.8)
693
+ ln_d, = ax.plot(xd_b, yd_b, '-', color=base_colors[(cyc-1) % len(base_colors)],
694
+ linewidth=2.0, label=lbl, alpha=0.8)
695
695
  cycle_lines[cyc] = {"charge": ln_c, "discharge": ln_d}
696
696
 
697
697
  # Swap x and y if --ro flag is set
@@ -699,8 +699,8 @@ def handle_gc_mode(args) -> int:
699
699
  ax.set_xlabel('Voltage (V)', labelpad=8.0)
700
700
  ax.set_ylabel(x_label_gc, labelpad=8.0)
701
701
  else:
702
- ax.set_xlabel(x_label_gc, labelpad=8.0)
703
- ax.set_ylabel('Voltage (V)', labelpad=8.0)
702
+ ax.set_xlabel(x_label_gc, labelpad=8.0)
703
+ ax.set_ylabel('Voltage (V)', labelpad=8.0)
704
704
  legend = ax.legend(title='Cycle')
705
705
  legend.get_title().set_fontsize('medium')
706
706
  fig.subplots_adjust(left=0.12, right=0.95, top=0.88, bottom=0.15)
@@ -354,7 +354,7 @@ def _draw_custom_colorbar(cbar_ax, im, label='Intensity', label_mode='normal'):
354
354
 
355
355
  def _update_custom_colorbar(cbar_ax, im=None, label=None, label_mode=None):
356
356
  """Update the custom colorbar when colormap or limits change.
357
-
357
+
358
358
  Args:
359
359
  cbar_ax: Axes object containing the colorbar
360
360
  im: Optional AxesImage object (if None, uses stored reference)
@@ -365,13 +365,13 @@ def _update_custom_colorbar(cbar_ax, im=None, label=None, label_mode=None):
365
365
  im = getattr(cbar_ax, '_colorbar_im', None)
366
366
  if im is None:
367
367
  return
368
-
368
+
369
369
  if label is None:
370
370
  label = getattr(cbar_ax, '_colorbar_label', 'Intensity')
371
-
371
+
372
372
  if label_mode is None:
373
373
  label_mode = getattr(cbar_ax, '_colorbar_label_mode', 'normal')
374
-
374
+
375
375
  # Redraw the colorbar
376
376
  _draw_custom_colorbar(cbar_ax, im, label, label_mode)
377
377
 
batplot/session.py CHANGED
@@ -2828,6 +2828,23 @@ def load_cpc_session(filename: str):
2828
2828
  ax2.yaxis.set_minor_locator(AutoMinorLocator())
2829
2829
  ax2.yaxis.set_minor_formatter(NullFormatter())
2830
2830
  ax2.tick_params(axis='y', which='minor', right=True)
2831
+ # Store tick_state on axes for interactive menu
2832
+ tick_state = {}
2833
+ for side_key, prefix in [('top', 't'), ('bottom', 'b'), ('left', 'l'), ('right', 'r')]:
2834
+ s = wasd_state.get(side_key, {})
2835
+ tick_state[f'{prefix}_ticks'] = bool(s.get('ticks', side_key in ('bottom', 'left')))
2836
+ tick_state[f'{prefix}_labels'] = bool(s.get('labels', side_key in ('bottom', 'left')))
2837
+ tick_state[f'm{prefix}x' if prefix in 'tb' else f'm{prefix}y'] = bool(s.get('minor', False))
2838
+ # Legacy keys
2839
+ tick_state['bx'] = tick_state.get('b_ticks', True)
2840
+ tick_state['tx'] = tick_state.get('t_ticks', False)
2841
+ tick_state['ly'] = tick_state.get('l_ticks', True)
2842
+ tick_state['ry'] = tick_state.get('r_ticks', True) # CPC has right axis
2843
+ tick_state['mbx'] = tick_state.get('mbx', False)
2844
+ tick_state['mtx'] = tick_state.get('mtx', False)
2845
+ tick_state['mly'] = tick_state.get('mly', False)
2846
+ tick_state['mry'] = tick_state.get('mry', False)
2847
+ ax._saved_tick_state = tick_state
2831
2848
  except Exception:
2832
2849
  pass
2833
2850
 
batplot/version_check.py CHANGED
@@ -210,7 +210,7 @@ def _print_update_message(current: str, latest: str) -> None:
210
210
  """
211
211
  # Calculate box width (minimum 68, expand if needed for longer messages)
212
212
  box_width = 68
213
- custom_msg = UPDATE_INFO.get('custom_message')
213
+ custom_msg = UPDATE_INFO.get('Fixed some bugs')
214
214
  update_notes = UPDATE_INFO.get('update_notes')
215
215
  show_notes = UPDATE_INFO.get('show_update_notes', True)
216
216
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: batplot
3
- Version: 1.8.1
3
+ Version: 1.8.2
4
4
  Summary: Interactive plotting tool for material science (1D plot) and electrochemistry (GC, CV, dQ/dV, CPC, operando) with batch processing
5
5
  Author-email: Tian Dai <tianda@uio.no>
6
6
  License: MIT License
@@ -1,28 +1,28 @@
1
- batplot/__init__.py,sha256=AjJgj7OxrIM-uNCR6JvGnRjpVNZgCUbmj0VE_BpFFF8,118
2
- batplot/args.py,sha256=GXOO5jfTSmd5y_MiGyabh-mgJsCrg3mKVfTwe1eKOYc,34961
1
+ batplot/__init__.py,sha256=cmYE6SKId-NqANj2k5EUEXFUnzP58FNBG7XRF6CLfgQ,118
2
+ batplot/args.py,sha256=mrDjMURp_OQnXrAwl9WnE_FW4HJu940O7NmL9QWQnD4,35189
3
3
  batplot/batch.py,sha256=YQ7obCIqLCObwDbM7TXpOBh7g7BO95wZNsa2Fy84c6o,53858
4
- batplot/batplot.py,sha256=40lU1nY1NqeAOpzNG_vLF_L34COKhiA19pMpbvA3SJc,171885
4
+ batplot/batplot.py,sha256=Avb0Txs-VaG1UU-bL-7HWnZf_8RS_n-KTnZz9O_3GPA,174374
5
5
  batplot/cif.py,sha256=JfHwNf3SHrcpALc_F5NjJmQ3lg71MBRSaIUJjGYPTx8,30120
6
6
  batplot/cli.py,sha256=ScDb2je8VQ0mz_z0SLCHEigiTuFPY5pb1snnzCouKms,5828
7
7
  batplot/color_utils.py,sha256=7InQLVo1XTg7sgAbltM2KeDSFJgr787YEaV9vJbIoWY,20460
8
8
  batplot/config.py,sha256=6nGY7fKN4T5KZUGQS2ArUBgEkLAL0j37XwG5SCVQgKA,6420
9
9
  batplot/converters.py,sha256=rR2WMPM0nR5E3eZI3gWbaJf_AfbdQx3urVSbJmZXNzo,8237
10
- batplot/cpc_interactive.py,sha256=HrrjaB8-CNYUitgl5zWMNvWQLZfxyFAtpSm67qoi-nE,238235
10
+ batplot/cpc_interactive.py,sha256=r70RVu75QAPEWkK_bR4c3MWDXNSwHYxOAYGEVf0TgUg,238755
11
11
  batplot/electrochem_interactive.py,sha256=ti7V8BoAxUk4BD_vDRKAu5ydlHMl75htLvdVYFUUVsw,221778
12
- batplot/interactive.py,sha256=uerVR-56g2Ur8qDZ-cXffPbpYMQXEXiMNXCxyWZZ8k0,206259
12
+ batplot/interactive.py,sha256=2hQrvV-7VEz0cscIb3Bc7qQ9MpRxP4hjZ6raEnpl5yg,206779
13
13
  batplot/manual.py,sha256=pbRI6G4Pm12pOW8LrOLWWu7IEOtqWN3tRHtgge50LlA,11556
14
- batplot/modes.py,sha256=Utfal5IaV8rfoNyNFziUZpqRlpZAWJdiTc45DY-FJE8,37300
14
+ batplot/modes.py,sha256=qE2OsOQQKhwOWene5zxJeuuewTrZxubtahQuz5je7ok,37252
15
15
  batplot/operando.py,sha256=p2Ug1mFUQxaU702cTBGgJKb3_v1C2p3LLUwfXaVBpPY,28311
16
- batplot/operando_ec_interactive.py,sha256=TMB6rDpeolX0CgE2V7tWC24ffJrnbJomQSnTsTd8CNQ,305121
16
+ batplot/operando_ec_interactive.py,sha256=8GQ47-I8SLTS88sFEk8m3vDxFEjSfD3hao62Qke7SxA,305137
17
17
  batplot/plotting.py,sha256=hG2_EdDhF1Qpn1XfZKdCQ5-w_m9gUYFbr804UQ5QjsU,10841
18
18
  batplot/readers.py,sha256=kAI0AvYrdfGRZkvADJ4riN96IWtrH24aAoZpBtONTbw,112960
19
- batplot/session.py,sha256=05JsVi0ygMzOxVRRZ4klhE5Eh6eE6QxKR8p7_j6slBI,134429
19
+ batplot/session.py,sha256=WuBZR-HKDr4VlqjwynyK8gCkx6xLoHzNaGBH948p9jU,135638
20
20
  batplot/style.py,sha256=ig1ozX4dhEsXf5JKaPZOvgVS3CWx-BTFSc3vfAH3Y-E,62274
21
21
  batplot/ui.py,sha256=ifpbK74juUzLMCt-sJGVaWtpDb1NMRJzs2YyiwwafzY,35302
22
22
  batplot/utils.py,sha256=LY2-Axr3DsQMTxuXe48vSjrLJKEnkzkZjdSFdQizbpg,37599
23
- batplot/version_check.py,sha256=ztTHwqgWd8OlS9PLLY5A_TabWxBASDA_-5yyN15PZC8,9996
23
+ batplot/version_check.py,sha256=--U_74DKgHbGtVdBsg9DfUJ10S5-OMXT-rzaYjK0JBc,9997
24
24
  batplot/data/USER_MANUAL.md,sha256=VYPvNZt3Fy8Z4Izr2FnQBw9vEaFTPkybhHDnF-OuKws,17694
25
- batplot-1.8.1.dist-info/licenses/LICENSE,sha256=2PAnHeCiTfgI7aKZLWr0G56HI9fGKQ0CEbQ02H-yExQ,1065
25
+ batplot-1.8.2.dist-info/licenses/LICENSE,sha256=2PAnHeCiTfgI7aKZLWr0G56HI9fGKQ0CEbQ02H-yExQ,1065
26
26
  batplot_backup_20251121_223043/__init__.py,sha256=3s2DUQuTbWs65hoN9cQQ8IiJbaFJY8fNxiCpwRBYoOA,118
27
27
  batplot_backup_20251121_223043/args.py,sha256=OH-h84QhN-IhMS8sPAsSEqccHD3wpeMgmXa_fqv5xtg,21215
28
28
  batplot_backup_20251121_223043/batch.py,sha256=oI7PONJyciHDOqNPq-8fnOQMyn9CpAdVznKaEdsy0ig,48650
@@ -45,8 +45,31 @@ batplot_backup_20251121_223043/style.py,sha256=xg-tj6bEbFUVjjxYMokiLehS4tSfKanLI
45
45
  batplot_backup_20251121_223043/ui.py,sha256=K0XZWyiuBRNkFod9mgZyJ9CLN78GR1-hh6EznnIb5S8,31208
46
46
  batplot_backup_20251121_223043/utils.py,sha256=jydA0JxsCWWAudXEwSjlxTG17y2F8U6hIAukAzi1P0g,32526
47
47
  batplot_backup_20251121_223043/version_check.py,sha256=vlHkGkgUJcD_Z4KZmwonxZvKZh0MwHLaBSxaLPc66AQ,4555
48
- batplot-1.8.1.dist-info/METADATA,sha256=3n6IsXn-SgLaDVHF6t4HCMmzDpf0Tkkbp23Dva98oN8,7406
49
- batplot-1.8.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
50
- batplot-1.8.1.dist-info/entry_points.txt,sha256=73GgH3Zs-qGIvgiyQLgGsSW-ryOwPPKHveOW6TDIR5Q,82
51
- batplot-1.8.1.dist-info/top_level.txt,sha256=CgqK4RpsYnUFAcqO4bLOnEhCoPY4IPEGLPkiDlzLIxg,39
52
- batplot-1.8.1.dist-info/RECORD,,
48
+ batplot_backup_20251221_101150/__init__.py,sha256=AjJgj7OxrIM-uNCR6JvGnRjpVNZgCUbmj0VE_BpFFF8,118
49
+ batplot_backup_20251221_101150/args.py,sha256=mrDjMURp_OQnXrAwl9WnE_FW4HJu940O7NmL9QWQnD4,35189
50
+ batplot_backup_20251221_101150/batch.py,sha256=YQ7obCIqLCObwDbM7TXpOBh7g7BO95wZNsa2Fy84c6o,53858
51
+ batplot_backup_20251221_101150/batplot.py,sha256=40lU1nY1NqeAOpzNG_vLF_L34COKhiA19pMpbvA3SJc,171885
52
+ batplot_backup_20251221_101150/cif.py,sha256=JfHwNf3SHrcpALc_F5NjJmQ3lg71MBRSaIUJjGYPTx8,30120
53
+ batplot_backup_20251221_101150/cli.py,sha256=ScDb2je8VQ0mz_z0SLCHEigiTuFPY5pb1snnzCouKms,5828
54
+ batplot_backup_20251221_101150/color_utils.py,sha256=7InQLVo1XTg7sgAbltM2KeDSFJgr787YEaV9vJbIoWY,20460
55
+ batplot_backup_20251221_101150/config.py,sha256=6nGY7fKN4T5KZUGQS2ArUBgEkLAL0j37XwG5SCVQgKA,6420
56
+ batplot_backup_20251221_101150/converters.py,sha256=rR2WMPM0nR5E3eZI3gWbaJf_AfbdQx3urVSbJmZXNzo,8237
57
+ batplot_backup_20251221_101150/cpc_interactive.py,sha256=HrrjaB8-CNYUitgl5zWMNvWQLZfxyFAtpSm67qoi-nE,238235
58
+ batplot_backup_20251221_101150/electrochem_interactive.py,sha256=ti7V8BoAxUk4BD_vDRKAu5ydlHMl75htLvdVYFUUVsw,221778
59
+ batplot_backup_20251221_101150/interactive.py,sha256=uerVR-56g2Ur8qDZ-cXffPbpYMQXEXiMNXCxyWZZ8k0,206259
60
+ batplot_backup_20251221_101150/manual.py,sha256=pbRI6G4Pm12pOW8LrOLWWu7IEOtqWN3tRHtgge50LlA,11556
61
+ batplot_backup_20251221_101150/modes.py,sha256=Utfal5IaV8rfoNyNFziUZpqRlpZAWJdiTc45DY-FJE8,37300
62
+ batplot_backup_20251221_101150/operando.py,sha256=p2Ug1mFUQxaU702cTBGgJKb3_v1C2p3LLUwfXaVBpPY,28311
63
+ batplot_backup_20251221_101150/operando_ec_interactive.py,sha256=TMB6rDpeolX0CgE2V7tWC24ffJrnbJomQSnTsTd8CNQ,305121
64
+ batplot_backup_20251221_101150/plotting.py,sha256=hG2_EdDhF1Qpn1XfZKdCQ5-w_m9gUYFbr804UQ5QjsU,10841
65
+ batplot_backup_20251221_101150/readers.py,sha256=kAI0AvYrdfGRZkvADJ4riN96IWtrH24aAoZpBtONTbw,112960
66
+ batplot_backup_20251221_101150/session.py,sha256=05JsVi0ygMzOxVRRZ4klhE5Eh6eE6QxKR8p7_j6slBI,134429
67
+ batplot_backup_20251221_101150/style.py,sha256=ig1ozX4dhEsXf5JKaPZOvgVS3CWx-BTFSc3vfAH3Y-E,62274
68
+ batplot_backup_20251221_101150/ui.py,sha256=ifpbK74juUzLMCt-sJGVaWtpDb1NMRJzs2YyiwwafzY,35302
69
+ batplot_backup_20251221_101150/utils.py,sha256=LY2-Axr3DsQMTxuXe48vSjrLJKEnkzkZjdSFdQizbpg,37599
70
+ batplot_backup_20251221_101150/version_check.py,sha256=ztTHwqgWd8OlS9PLLY5A_TabWxBASDA_-5yyN15PZC8,9996
71
+ batplot-1.8.2.dist-info/METADATA,sha256=ZNkBWCjEFRJVKuq1FtQ9JCovRWnEm3lmqWs8eYsvMzU,7406
72
+ batplot-1.8.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
73
+ batplot-1.8.2.dist-info/entry_points.txt,sha256=73GgH3Zs-qGIvgiyQLgGsSW-ryOwPPKHveOW6TDIR5Q,82
74
+ batplot-1.8.2.dist-info/top_level.txt,sha256=Z5Q4sAiT_FDqZqhlLsYn9avRTuFAEEf3AVfkswxOb18,70
75
+ batplot-1.8.2.dist-info/RECORD,,
@@ -1,2 +1,3 @@
1
1
  batplot
2
2
  batplot_backup_20251121_223043
3
+ batplot_backup_20251221_101150
@@ -0,0 +1,5 @@
1
+ """batplot: Interactive plotting for battery data visualization."""
2
+
3
+ __version__ = "1.8.1"
4
+
5
+ __all__ = ["__version__"]