chemparseplot 1.9.5__tar.gz → 1.9.6__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 (85) hide show
  1. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/PKG-INFO +1 -1
  2. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/_version.py +2 -2
  3. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/plot/neb.py +11 -3
  4. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/.gitignore +0 -0
  5. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/LICENSE +0 -0
  6. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/__init__.py +0 -0
  7. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/__init__.py +0 -0
  8. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/chemgp_hdf5.py +0 -0
  9. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/chemgp_jsonl.py +0 -0
  10. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/converter.py +0 -0
  11. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/eon/__init__.py +0 -0
  12. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/eon/_trajectory_common.py +0 -0
  13. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/eon/con_io.py +0 -0
  14. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/eon/dimer_trajectory.py +0 -0
  15. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/eon/gprd.py +0 -0
  16. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/eon/min_trajectory.py +0 -0
  17. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/eon/minimization.py +0 -0
  18. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/eon/neb.py +0 -0
  19. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/eon/saddle_search.py +0 -0
  20. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/eon/stitch.py +0 -0
  21. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/file_.py +0 -0
  22. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/neb_utils.py +0 -0
  23. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/orca/__init__.py +0 -0
  24. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/orca/geomscan.py +0 -0
  25. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/orca/neb/__init__.py +0 -0
  26. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/orca/neb/interp.py +0 -0
  27. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/orca/neb/opi_parser.py +0 -0
  28. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/patterns.py +0 -0
  29. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/plumed.py +0 -0
  30. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/projection.py +0 -0
  31. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/sella/saddle_search.py +0 -0
  32. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/trajectory/__init__.py +0 -0
  33. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/trajectory/hdf5.py +0 -0
  34. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/trajectory/neb.py +0 -0
  35. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/parse/types.py +0 -0
  36. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/plot/__init__.py +0 -0
  37. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/plot/chemgp.py +0 -0
  38. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/plot/geomscan.py +0 -0
  39. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/plot/optimization.py +0 -0
  40. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/plot/plumed.py +0 -0
  41. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/plot/structs.py +0 -0
  42. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/plot/theme.py +0 -0
  43. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/units.py +0 -0
  44. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/chemparseplot/util.py +0 -0
  45. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/pyproject.toml +0 -0
  46. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/readme.md +0 -0
  47. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/__init__.py +0 -0
  48. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/_optional_imports.py +0 -0
  49. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/conftest.py +0 -0
  50. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/__init__.py +0 -0
  51. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/_con_fixtures.py +0 -0
  52. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/orca/test_geomscan.py +0 -0
  53. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/orca/test_interp.py +0 -0
  54. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_chemgp_hdf5.py +0 -0
  55. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_chemgp_jsonl_types.py +0 -0
  56. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_con_io.py +0 -0
  57. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_converter.py +0 -0
  58. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_dimer_trajectory.py +0 -0
  59. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_eon_neb_types.py +0 -0
  60. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_eon_trajectory_common.py +0 -0
  61. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_min_trajectory.py +0 -0
  62. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_minimization_result.py +0 -0
  63. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_neb_stitch.py +0 -0
  64. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_neb_utils.py +0 -0
  65. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_parser_types.py +0 -0
  66. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_patterns.py +0 -0
  67. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_plumed.py +0 -0
  68. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_projection.py +0 -0
  69. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_readcon_boundary.py +0 -0
  70. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_saddle_results.py +0 -0
  71. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_sella_saddle.py +0 -0
  72. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_trajectory_hdf5.py +0 -0
  73. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/parse/test_trajectory_neb.py +0 -0
  74. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/plot/__init__.py +0 -0
  75. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/plot/test_chemgp_utils.py +0 -0
  76. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/plot/test_neb_helpers.py +0 -0
  77. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/plot/test_neb_renderers.py +0 -0
  78. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/plot/test_optimization.py +0 -0
  79. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/plot/test_orca_neb_payload.py +0 -0
  80. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/plot/test_projection_refactor.py +0 -0
  81. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/plot/test_strip_rendering.py +0 -0
  82. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/plot/test_structs_units.py +0 -0
  83. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/test_coverage_batch.py +0 -0
  84. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/test_full_coverage.py +0 -0
  85. {chemparseplot-1.9.5 → chemparseplot-1.9.6}/tests/tutorials/test_chemparseplot.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: chemparseplot
3
- Version: 1.9.5
3
+ Version: 1.9.6
4
4
  Summary: Parsers and plotting tools for computational chemistry
5
5
  Project-URL: Documentation, https://chemparseplot.rgoswami.me
6
6
  Project-URL: Issues, https://github.com/HaoZeke/chemparseplot/issues
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
18
18
  commit_id: str | None
19
19
  __commit_id__: str | None
20
20
 
21
- __version__ = version = '1.9.5'
22
- __version_tuple__ = version_tuple = (1, 9, 5)
21
+ __version__ = version = '1.9.6'
22
+ __version_tuple__ = version_tuple = (1, 9, 6)
23
23
 
24
24
  __commit_id__ = commit_id = None
@@ -546,6 +546,7 @@ def plot_structure_strip(
546
546
  perspective_tilt=0.0,
547
547
  max_display_height_px: float | None = None,
548
548
  width_fill_fraction=0.82,
549
+ prefer_single_row: bool = True,
549
550
  ) -> Any:
550
551
  """Renders a horizontal gallery of atomic structures.
551
552
 
@@ -562,6 +563,10 @@ def plot_structure_strip(
562
563
  Color for divider lines.
563
564
  divider_style : str
564
565
  Linestyle for divider lines (e.g. ``"--"``, ``"-"``, ``":"``).
566
+ prefer_single_row : bool
567
+ If True (default), pack up to 16 structures in one row. If False,
568
+ honour ``max_cols`` so e.g. 12 images with ``max_cols=6`` become two
569
+ rows of larger molecules.
565
570
 
566
571
  ```{versionadded} 0.1.0
567
572
  ```
@@ -584,9 +589,12 @@ def plot_structure_strip(
584
589
 
585
590
  ax.axis("off")
586
591
  n_plot = len(atoms_list)
587
- # Prefer a single row when everything fits; multi-row with a shared label
588
- # baseline previously stacked numbers on top of each other.
589
- effective_max_cols = max(max_cols, n_plot) if n_plot <= 16 else max_cols
592
+ # Single-row packing is optional: landscape strips with many images often
593
+ # want max_cols=6 → two rows of larger structures.
594
+ if prefer_single_row and n_plot <= 16:
595
+ effective_max_cols = max(max_cols, n_plot)
596
+ else:
597
+ effective_max_cols = max(1, int(max_cols))
590
598
  n_cols = min(n_plot, effective_max_cols)
591
599
  n_rows = (n_plot + effective_max_cols - 1) // effective_max_cols
592
600
 
File without changes
File without changes
File without changes