Skip to content

Releases: janosh/pymatviz

v0.13.2

03 Nov 19:32
Compare
Choose a tag to compare

What's Changed

💥 Breaking Changes

  • Fix ptable_heatmap_ratio following change of default count_elements fill_value to 0 by @DanielYang59 in #226

🧹 House-Keeping

  • Split coordination.py module into plotly.py and helpers.py by @janosh in #239

🏥 Package Health

Full Changelog: v0.13.1...v0.13.2

v0.13.1

18 Oct 20:36
Compare
Choose a tag to compare

Hot fix release for

ImportError: cannot import name 'SymmetryUndeterminedError' from 'pymatgen.symmetry.analyzer'
stacktrace
    from pymatviz.enums import LabelEnum
/opt/hostedtoolcache/Python/3.12.7/x64/lib/python3.12/site-packages/pymatviz/__init__.py:22: in <module>
    from pymatviz import (
/opt/hostedtoolcache/Python/3.12.7/x64/lib/python3.12/site-packages/pymatviz/structure_viz/__init__.py:5: in <module>
    from pymatviz.structure_viz.mpl import structure_2d
/opt/hostedtoolcache/Python/3.12.7/x64/lib/python3.12/site-packages/pymatviz/structure_viz/mpl.py:22: in <module>
    from pymatgen.symmetry.analyzer import SpacegroupAnalyzer, SymmetryUndeterminedError

Full Changelog: v0.13.0...v0.13.1

v0.13.0

17 Oct 19:56
Compare
Choose a tag to compare

What's Changed

💥 Breaking Changes

🎉 New Features

🛠 Enhancements

  • Custom site hover texts in pmv.structure_(2|3)d_plotly by @janosh in #228
  • Experimental: add show_bonds: bool | NearNeighbors = False to structure_(2|3)d_plotly by @janosh in #233
  • Add full_rdf by @janosh in #234
  • Add coordination_vs_cutoff_line plot function by @janosh in #236

🐛 Bug Fixes

  • Fix /api docs by migrating to remark/rehype by @janosh in #237

🏥 Package Health

  • Reuse optional dependency groups for single source of truth in pyproject.toml by @DanielYang59 in #231

Full Changelog: v0.12.0...v0.13.0

v0.12.0

07 Oct 20:08
Compare
Choose a tag to compare

What's Changed

💥 Breaking Changes

  • Add kwarg use_tooltips: bool = True to df_to_html (prev df_to_html_table) by @janosh in #205

🎉 New Features

  • element_pair_rdfs plots radial distribution functions (RDFs) for element pairs in a structure by @janosh in #203
  • Add structure_2d_plotly to pymatviz/structure_viz.py by @janosh in #213
  • Add structure_3d_plotly by @janosh in #214

🛠 Enhancements

  • Add IS_IPYTHON global by @janosh in #198
  • Support list/dict of structures in element_pair_rdfs by @janosh in #206
  • Render spheres with hover tooltip on unit cell corners in pmv.structure_(2|3)d_plotly by @janosh in #219
  • Add add_annotation functionality for ptable plotters by @DanielYang59 in #200
  • Support plotting site vectors like forces/magmoms in structure_(2|3)d_plotly by @janosh in #220
  • Add scale: float = 1 to ptable_heatmap_plotly by @minhsueh in #210
  • Vertically/horizontally stacked XRD plots by @janosh in #223

🐛 Bug Fixes

  • Fix calculate_rdf not accounting for periodic boundaries by @janosh in #211
  • Fix xrd_pattern not allowing annotate_peaks=0 to disable peak annotation by @janosh in #212
  • structure_(2|3)d_plotly allow overriding subplot title's y position and anchor by @janosh in #218

🧹 House-Keeping

🚧 CI

🏥 Package Health

🧹 Linting

  • Clean up var names in unit tests, avoid MP API access in GitHub workflow by @DanielYang59 in #207

New Contributors

Full Changelog: v0.11.0...v0.12.0

v0.11.0

01 Sep 05:37
Compare
Choose a tag to compare

💥 Breaking Changes

  • Bump min supported Python to 3.10 by @janosh in #195 (includes numpy v2 compatibility)

Full Changelog: v0.10.1...v0.11.0

v0.10.1

18 Aug 06:47
Compare
Choose a tag to compare

What's Changed

🛠 Enhancements

  • Re-export all submodules/subpackages from pymatviz.__init__.py by @janosh in #191
  • bin_df_cols leave input df unchanged by @janosh in #192
  • density_scatter_plotly add kwarg facet_col: str | None = None by @janosh in #193

🐛 Bug Fixes

🧹 House-Keeping

Full Changelog: v0.10.0...v0.10.1

v0.10.0

31 Jul 23:17
Compare
Choose a tag to compare

Following #189, the recommended way to import from pymatviz is no longer as individual plot functions but as a namespace, e.g. import pymatviz as pmv; pmv.structure_2d(). All functions that previously had a plot_ prefix now have the same name without the prefix for consistency across the code base (e.g. plot_structure_2d->structure_2d).
2 more renames:

  • pymatviz/histograms.py was renamed to pymatviz/histogram.py for consistency with scatter.py, bar.py, sankey.py, etc.
  • spacegroup_hist was renamed to spacegroup_bar and moved to pymatviz.bar. this is not breaking yet as a deprecated spacegroup_hist was left in pymatviz/histogram.py

What's Changed

💥 Breaking Changes

  • [Breaking] Refactor ptable heatmap plotter by @DanielYang59 in #157
  • Breaking: drop plot_ prefix from multiple functions by @janosh in #189

🛠 Enhancements

🤷‍♂️ Other Changes

  • Update the function names for wren utils given breaking changes in Aviary by @CompRhys in #182

Full Changelog: v0.9.3...v0.10.0

v0.9.3

18 Jul 22:31
Compare
Choose a tag to compare

What's Changed

🛠 Enhancements

  • Add pymatviz.io.df_to_svg by @janosh in #179
  • Better default ptable_heatmap_plotly tooltips by @janosh in #178

🐛 Bug Fixes

  • Moving enums may have broken end users pickle's, reduce to str when pickling to be more backwards compatible going forward. by @CompRhys in #176
  • Fix unit test for ptable plotly by @DanielYang59 in #177

📖 Documentation

Full Changelog: v0.9.2...v0.9.3

v0.9.2

07 Jul 21:28
Compare
Choose a tag to compare

🧪 lots of new test coverage in this release!

What's Changed

💥 Breaking Changes

🐛 Bug Fixes

  • Fix missing keys Te + Nd in ELEM_COLORS_VESTA and support it in plot_structure_2d by @janosh in #173
  • Fix ptable_heatmap_plotly color scale tick labels for log=True by @janosh in #174

Full Changelog: v0.9.1...v0.9.2

v0.9.1

05 Jul 00:28
Compare
Choose a tag to compare

What's Changed

🐛 Bug Fixes

  • Fix bad NPY002 migration by @janosh in #163
  • Add toggle_log_linear_y_axis powerup by @janosh in #165
  • Fix density_scatter_plotly metric annotation by @janosh in #166
  • Fix and test ptable_heatmap text color logic by @janosh in #169
  • Fix count_elements for series of Composition by @janosh in #170

🛠 Enhancements

  • Add plot_xrd_pattern() for creating interactive XRD patterns with plotly by @janosh in #167
  • plot_xrd_pattern accept DiffractionPattern | Structure as input by @janosh in #168
  • Split powerups module by backend: matplotlib/plotly/both by @janosh in #171

Full Changelog: v0.9.0...v0.9.1