Recent Releases of pymatviz

pymatviz - v0.17.1

What's Changed

๐Ÿ›  Enhancements

  • Bump matterviz by @janosh in https://github.com/janosh/pymatviz/pull/315 ### ๐Ÿ› Bug Fixes
  • Fix FileNotFoundError pyproject.toml in 0.17.0 by @janosh in https://github.com/janosh/pymatviz/pull/313

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.17.0...v0.17.1

- Python
Published by janosh 10 months ago

pymatviz - v0.17.0

What's Changed

๐Ÿ’ฅ Breaking Changes

  • Add cell_size_fn: Callable[[ModuleStats], float] keyword to py_pkg_treemap by @janosh in https://github.com/janosh/pymatviz/pull/293
  • Support disordered site rendering in structure_(2|3)d_plotly() by @janosh in https://github.com/janosh/pymatviz/pull/301
  • Remove residual_vs_actual() by @janosh in https://github.com/janosh/pymatviz/pull/302
  • chem_env_treemap by @janosh in https://github.com/janosh/pymatviz/pull/303
  • Drop matplotlib dependency, refactor few remaining matplotlib functions to plotly by @janosh in https://github.com/janosh/pymatviz/pull/305
  • MatterViz widgets by @janosh in https://github.com/janosh/pymatviz/pull/311 ### ๐ŸŽ‰ New Features
  • Sunburst of coordination numbers and environments by @janosh in https://github.com/janosh/pymatviz/pull/295 ### ๐Ÿ›  Enhancements
  • cluster_compositions add annotate_points keyword by @janosh in https://github.com/janosh/pymatviz/pull/291
  • Add element color legend to plotly 2d and 3d structure visualizations by @janosh in https://github.com/janosh/pymatviz/pull/298
  • Auto-render pymatgen/ASE objects when returned from notebook cells by @janosh in https://github.com/janosh/pymatviz/pull/299
  • structure_(2|3)d_plotly add cell_boundary_tol: float | dict[str, float] by @janosh in https://github.com/janosh/pymatviz/pull/300 ### ๐Ÿ› Bug Fixes
  • Fix plotly validators by @bmaranville in https://github.com/janosh/pymatviz/pull/310 ### ๐Ÿงน House-Keeping
  • Rename structure_(2|3)d_plotly to structure_(2|3)d by @janosh in https://github.com/janosh/pymatviz/pull/304
  • Update pytest-split durations by @janosh in https://github.com/janosh/pymatviz/pull/306

New Contributors

  • @bmaranville made their first contribution in https://github.com/janosh/pymatviz/pull/310

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.16.0...v0.17.0

- Python
Published by janosh 10 months ago

pymatviz - v0.16.0

What's Changed

  • Add py-pkg-treemap() #290
  • Add color_scale param to allow for linear, logarithmic, arcsinh scaling of property values in cluster_compositions #288
  • refactor cluster_compositions to take DataFrame as 1st arg, not composition list #287
  • Test example scripts with uv run in CI #286
  • New cluster module with functions for embedding, projecting and scattering compositions #285
  • spacegroupsunburst and chemsyssunburst: add keywords maxslices and maxslicesmode: other | none #284
  • Multi-trace plotly powerups #283
  • brillouin_zone_3d now supports multiple structures/atoms in customizable grid layouts #282
  • Add max_cells: int | None keyword to chem_sys_treemap #281
  • structure_(2|3)d_plotly enable gradient-colored bonds #280
  • Auto font color for high contrast of element symbols in ptable_heatmap_splits_plotly #279
  • Update luminance calculation to use WCAG 2.0 standard coefficients #278
  • Fix structure_2d_plotly rotation keyword not applying to unit cell #276
  • spglib to moyo #275
  • fix bond drawing in structure3dplotly with better image atom handling #274
  • Use SI suffix number format in ptable colorbar tick labels #273
  • fix error in docstring #271
  • Remove matplotlib-based periodic table plotting functions #270
  • Ward metallic glasses train/val/test splits #269
  • Codecov #268
  • Support per-split colorbars and colorscales in ptable_heatmap_splits_plotly() #267
  • add enhance_parity_plot() powerup #266
  • add treemap.py with new chemsystreemap plot function #265
  • add chemsyssunburst() to pymatviz/sunburst.py to visualize chemical system distributions #264
  • test metallic glass feature engineering and model evaluation f0c5174
  • better colorbar tick formatting and spacing in densityscatterplotly d1d51b4
  • RDF plotting hide legend for single structure dc8a1a2
  • fix confusion_matrix() mismatch of false-positive/negative counts and heatmap color ae5b629
  • contrast_ratio() in pymatviz/utils/plotting.py to calculate color contrast according to WCAG 2.0 b7c30cf
  • Add script to fetch and update papers citing pymatviz (#277) 6a2b831
  • add examples/mlip_phonons.py 608a12f
  • clean up examples/diatomics/calcmlipdiatomic_curves.py and support multiple ML models d6fe3d9
  • add examples/compareelasticconstants.py testing MACE vs MP PBE 2861298
  • Refactor ROC and PR curve no-skill line plotting 6d68cc1
  • readme.md add links to source and example code for each plot function 65ccb7c
  • add assets/scripts/keyenumtable.py to visualize Key enum attributes with Plotly 0598bb5
  • delete unused enums Model + ElemColorMode ee296bc
  • fix ptableheatmapsplitsplotly() incorrectly handling hidef_block keyword resulting in missing tiles for Rf 104 through Og 118 b9ccbf0
  • force LabelEnums to have labels, gives .label type str causing less mypy headache a6825ff

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.15.1...v0.16.0

- Python
Published by janosh about 1 year ago

pymatviz - v0.15.1

What's Changed

๐Ÿ›  Enhancements

  • structure_(2|3)d_plotly now support ASE Atoms and sequences of them by @janosh in https://github.com/janosh/pymatviz/pull/262
  • Remove hard-coded gridsize in density_hexbin by @jcwang587 in https://github.com/janosh/pymatviz/pull/263
  • add molecular dynamics attributes to Key enum 4b55a40
  • better Key.unit formatting: replace unicode sup/superscripts with <sup>/<sub>+ASCII eb12217

๐Ÿงน Linting

  • bump ruff to 0.9 and auto-fix 6989ba5

๐Ÿ“– Documentation

  • calculate MACE-MPA-0 diatomic curves 4dc5f1e

New Contributors

  • @jcwang587 made their first contribution in https://github.com/janosh/pymatviz/pull/263

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.15.0...v0.15.1

- Python
Published by janosh over 1 year ago

pymatviz - v0.15.0

What's Changed

๐Ÿ’ฅ Breaking Changes

  • plotly ROC and precision-recall curves by @janosh in https://github.com/janosh/pymatviz/pull/253
  • Delete pymatviz/classify/curves_matplotlib.py by @janosh in https://github.com/janosh/pymatviz/pull/254 ### ๐ŸŽ‰ New Features
  • Add pymatviz.classify.confusion_matrix by @janosh in https://github.com/janosh/pymatviz/pull/252
  • Add brillouin_zone_3d plot function by @janosh in https://github.com/janosh/pymatviz/pull/251
  • Add ptable_scatter_plotly by @janosh in https://github.com/janosh/pymatviz/pull/258 ### ๐Ÿ›  Enhancements
  • Add element color schemes alloys by @janosh in https://github.com/janosh/pymatviz/pull/255
  • Support phonopy TotalDos and BandStructure in phonon_dos and phonon_bands plots by @janosh in https://github.com/janosh/pymatviz/pull/256
  • Multi-line ptable_scatter_plotly by @janosh in https://github.com/janosh/pymatviz/pull/260 ### ๐Ÿ› Bug Fixes
  • Fix phonon_bands for band structures with different paths in k-space by @janosh in https://github.com/janosh/pymatviz/pull/250

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.14.0...v0.15.0

- Python
Published by janosh over 1 year ago

pymatviz - v0.14.0

What's Changed

๐Ÿ’ฅ Breaking Changes

  • [Breaking] Split utils into sub-modules, move typing from utils to top-level (pmv.typing) by @DanielYang59 in https://github.com/janosh/pymatviz/pull/248 ### ๐ŸŽ‰ New Features
  • Add ptable_hists_plotly by @janosh in https://github.com/janosh/pymatviz/pull/243
  • ptable_heatmap_splits_plotly by @janosh in https://github.com/janosh/pymatviz/pull/246 ### ๐Ÿ›  Enhancements
  • Better ptable_hists_plotly defaults by @janosh in https://github.com/janosh/pymatviz/pull/244
  • phonon_bands enable custom acoustic/optical bands by @janosh in https://github.com/janosh/pymatviz/pull/249 ### ๐Ÿ“– Documentation
  • Split make_assets scripts by plot functions by @DanielYang59 in https://github.com/janosh/pymatviz/pull/247 ### ๐Ÿคทโ€โ™‚๏ธ Other Changes
  • Enhance warning message for default return type change of ptable_heatmap by @DanielYang59 in https://github.com/janosh/pymatviz/pull/240

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.13.2...v0.14.0

- Python
Published by janosh over 1 year ago

pymatviz - v0.13.2

What's Changed

๐Ÿ’ฅ Breaking Changes

  • Fix ptable_heatmap_ratio following change of default count_elements fill_value to 0 by @DanielYang59 in https://github.com/janosh/pymatviz/pull/226

๐Ÿงน House-Keeping

  • Split coordination.py module into plotly.py and helpers.py by @janosh in https://github.com/janosh/pymatviz/pull/239

๐Ÿฅ Package Health

  • Speedup import and add regression check for import time by @DanielYang59 in https://github.com/janosh/pymatviz/pull/238

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.13.1...v0.13.2

- Python
Published by janosh over 1 year ago

pymatviz - v0.13.1

Hot fix release for

py ImportError: cannot import name 'SymmetryUndeterminedError' from 'pymatgen.symmetry.analyzer'

stacktrace ```py from pymatviz.enums import LabelEnum /opt/hostedtoolcache/Python/3.12.7/x64/lib/python3.12/site-packages/pymatviz/__init__.py:22: in from pymatviz import ( /opt/hostedtoolcache/Python/3.12.7/x64/lib/python3.12/site-packages/pymatviz/structure_viz/__init__.py:5: in 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 from pymatgen.symmetry.analyzer import SpacegroupAnalyzer, SymmetryUndeterminedError ```

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.13.0...v0.13.1

- Python
Published by janosh over 1 year ago

pymatviz - v0.13.0

What's Changed

๐Ÿ’ฅ Breaking Changes

  • Delete correlation.py module by @janosh in https://github.com/janosh/pymatviz/pull/229

๐ŸŽ‰ New Features

  • Rainclouds plots by @janosh in https://github.com/janosh/pymatviz/pull/227
  • Coordination number histograms by @janosh in https://github.com/janosh/pymatviz/pull/235

๐Ÿ›  Enhancements

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

๐Ÿ› Bug Fixes

  • Fix /api docs by migrating to remark/rehype by @janosh in https://github.com/janosh/pymatviz/pull/237

๐Ÿฅ Package Health

  • Reuse optional dependency groups for single source of truth in pyproject.toml by @DanielYang59 in https://github.com/janosh/pymatviz/pull/231

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.12.0...v0.13.0

- Python
Published by janosh over 1 year ago

pymatviz - v0.12.0

What's Changed

๐Ÿ’ฅ Breaking Changes

  • Add kwarg use_tooltips: bool = True to df_to_html (prev df_to_html_table) by @janosh in https://github.com/janosh/pymatviz/pull/205

๐ŸŽ‰ New Features

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

๐Ÿ›  Enhancements

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

๐Ÿ› Bug Fixes

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

๐Ÿงน House-Keeping

  • ruff fixes by @DanielYang59 in https://github.com/janosh/pymatviz/pull/196

๐Ÿšง CI

  • use pytest-split in GitHub Action by @janosh in https://github.com/janosh/pymatviz/pull/224

๐Ÿฅ Package Health

  • (Not) Exclude tests from source distribution, and drop python2 tag for wheel by @DanielYang59 in https://github.com/janosh/pymatviz/pull/202
  • pin kaleido==0.2.1 by @theochemtheo in https://github.com/janosh/pymatviz/pull/217

๐Ÿงน Linting

  • Clean up var names in unit tests, avoid MP API access in GitHub workflow by @DanielYang59 in https://github.com/janosh/pymatviz/pull/207

New Contributors

  • @theochemtheo made their first contribution in https://github.com/janosh/pymatviz/pull/217
  • @minhsueh made their first contribution in https://github.com/janosh/pymatviz/pull/210

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.11.0...v0.12.0

- Python
Published by janosh over 1 year ago

pymatviz - v0.11.0

๐Ÿ’ฅ Breaking Changes

  • Bump min supported Python to 3.10 by @janosh in https://github.com/janosh/pymatviz/pull/195 (includes numpy v2 compatibility)

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.10.1...v0.11.0

- Python
Published by janosh over 1 year ago

pymatviz - v0.10.1

What's Changed

๐Ÿ›  Enhancements

  • Re-export all submodules/subpackages from pymatviz.__init__.py by @janosh in https://github.com/janosh/pymatviz/pull/191
  • bin_df_cols leave input df unchanged by @janosh in https://github.com/janosh/pymatviz/pull/192
  • density_scatter_plotly add kwarg facet_col: str | None = None by @janosh in https://github.com/janosh/pymatviz/pull/193 ### ๐Ÿ› Bug Fixes
  • Fix svgo workflow for ptable scatter plots by @DanielYang59 in https://github.com/janosh/pymatviz/pull/187 ### ๐Ÿงน House-Keeping
  • Self-import refactor by @janosh in https://github.com/janosh/pymatviz/pull/194

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.10.0...v0.10.1

- Python
Published by janosh almost 2 years ago

pymatviz - v0.10.0

Following https://github.com/janosh/pymatviz/pull/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). the only exception is spacegroup_hist was renamed to spacegroup_bar and moved to pymatviz.bar (the convenience import from pymatviz.__init__.py works as before).

What's Changed

๐Ÿ’ฅ Breaking Changes

  • [Breaking] Refactor ptable heatmap plotter by @DanielYang59 in https://github.com/janosh/pymatviz/pull/157
  • Breaking: drop plot_ prefix from multiple functions by @janosh in https://github.com/janosh/pymatviz/pull/189 ### ๐Ÿ›  Enhancements
  • Add protostructure terminology to enum by @CompRhys in https://github.com/janosh/pymatviz/pull/185
  • density_scatter_plotly QoL tweaks by @janosh in https://github.com/janosh/pymatviz/pull/190 ### ๐Ÿคทโ€โ™‚๏ธ Other Changes
  • Update the function names for wren utils given breaking changes in Aviary by @CompRhys in https://github.com/janosh/pymatviz/pull/182

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.9.3...v0.10.0

- Python
Published by janosh almost 2 years ago

pymatviz - v0.9.3

What's Changed

๐Ÿ’ฅ Breaking Changes

  • Add pymatviz.io.df_to_svg by @janosh in https://github.com/janosh/pymatviz/pull/179 ### ๐Ÿ› 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 https://github.com/janosh/pymatviz/pull/176
  • Fix unit test for ptable plotly by @DanielYang59 in https://github.com/janosh/pymatviz/pull/177 ### ๐Ÿ›  Enhancements
  • Better default ptable_heatmap_plotly tooltips by @janosh in https://github.com/janosh/pymatviz/pull/178 ### ๐Ÿ“– Documentation
  • Fix ptable scatter examples in homepage by @DanielYang59 in https://github.com/janosh/pymatviz/pull/180

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.9.2...v0.9.3

- Python
Published by janosh almost 2 years ago

pymatviz - v0.9.2

๐Ÿงช lots of new test coverage in this release!

What's Changed

๐Ÿ’ฅ Breaking Changes

  • Fix log_density in density_scatter_plotly by @janosh in https://github.com/janosh/pymatviz/pull/172 breaking cause pymatviz.utils.(VALID_BACKENDS | MPL_BACKEND | PLOTLY_BACKEND) renamed to BACKENDS | MATPLOTLIB | PLOTLY

๐Ÿ› Bug Fixes

  • Fix missing keys Te + Nd in ELEM_COLORS_VESTA and support it in plot_structure_2d by @janosh in https://github.com/janosh/pymatviz/pull/173
  • Fix ptable_heatmap_plotly color scale tick labels for log=True by @janosh in https://github.com/janosh/pymatviz/pull/174

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.9.1...v0.9.2

- Python
Published by janosh almost 2 years ago

pymatviz - v0.9.1

What's Changed

๐Ÿ› Bug Fixes

  • Fix bad NPY002 migration by @janosh in https://github.com/janosh/pymatviz/pull/163
  • Add toggle_log_linear_y_axis powerup by @janosh in https://github.com/janosh/pymatviz/pull/165
  • Fix density_scatter_plotly metric annotation by @janosh in https://github.com/janosh/pymatviz/pull/166
  • Fix and test ptable_heatmap text color logic by @janosh in https://github.com/janosh/pymatviz/pull/169
  • Fix count_elements for series of Composition by @janosh in https://github.com/janosh/pymatviz/pull/170 ### ๐Ÿ›  Enhancements
  • Add plot_xrd_pattern() for creating interactive XRD patterns with plotly by @janosh in https://github.com/janosh/pymatviz/pull/167
  • plot_xrd_pattern accept DiffractionPattern | Structure as input by @janosh in https://github.com/janosh/pymatviz/pull/168
  • Split powerups module by backend: matplotlib/plotly/both by @janosh in https://github.com/janosh/pymatviz/pull/171

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.9.0...v0.9.1

- Python
Published by janosh almost 2 years ago

pymatviz - v0.9.0

What's Changed

๐ŸŽ‰ New Features

  • Add pymatviz.histogram.plot_histogram by @janosh in https://github.com/janosh/pymatviz/pull/159 (๐Ÿ’ฅ breaking)
  • density_scatter_plotly() by @janosh in https://github.com/janosh/pymatviz/pull/161 (๐Ÿ’ฅ breaking)

๐Ÿ› Bug Fixes

  • Fix ptable_heatmap_ratio legend by @janosh in https://github.com/janosh/pymatviz/pull/158

๐Ÿ›  Enhancements

  • Support passing sequence of structures to plot_structure_2d() to be plotted in grid by @janosh in https://github.com/janosh/pymatviz/pull/156
  • ptable_scatters allow 3rd data dimension for colormap by @DanielYang59 in https://github.com/janosh/pymatviz/pull/155

๐Ÿ’ก Refactoring

  • Fix ruff NPY002 by @janosh in https://github.com/janosh/pymatviz/pull/162

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.8.3...v0.9.0

- Python
Published by janosh almost 2 years ago

pymatviz - v0.8.3

What's Changed

  • Add mlff_phonons.ipynb example notebook by @janosh in https://github.com/janosh/pymatviz/pull/144
  • Fix ptable_heatmap_splits TypeErrors by @janosh in https://github.com/janosh/pymatviz/pull/146
  • MatPES EDA script by @janosh in https://github.com/janosh/pymatviz/pull/147
  • Add keyword log: bool = False to spacegroup_hist to log scale y-axis by @janosh in https://github.com/janosh/pymatviz/pull/148
  • [Enhancement/Breaking] Refactor ptable_hists by @DanielYang59 in https://github.com/janosh/pymatviz/pull/149
  • Handle missing value (NaN) and infinity for ptable data by @DanielYang59 in https://github.com/janosh/pymatviz/pull/152
  • Fix PTableProjector.hide_f_block property by @janosh in https://github.com/janosh/pymatviz/pull/154

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.8.2...v0.8.3

- Python
Published by janosh almost 2 years ago

pymatviz - v0.8.2

What's Changed

  • plot_phonon_bands() add kwargs branch_mode: "union" | "intersection" = "union" and branches: Sequence[str] = () by @janosh in https://github.com/janosh/pymatviz/pull/124
  • add_best_fit_line() power-up by @janosh in https://github.com/janosh/pymatviz/pull/125
  • Add validate_fig decorator utility by @janosh in https://github.com/janosh/pymatviz/pull/126
  • MACE-MP pair repulsion curves by @janosh in https://github.com/janosh/pymatviz/pull/127
  • Copy color options for element types from ptable_plots to ptable_hists by @janosh in https://github.com/janosh/pymatviz/pull/129
  • Migrate to flat eslint config file by @DanielYang59 in https://github.com/janosh/pymatviz/pull/137
  • Refactor ptable plotters and add ptable_heatmap with diagonally-split tiles by @DanielYang59 in https://github.com/janosh/pymatviz/pull/131
  • Remove text background and fix z-order in structure_viz by @DanielYang59 in https://github.com/janosh/pymatviz/pull/139
  • Add keyword hide_f_block: bool = None (La and Ac series) to ptable plotters by @DanielYang59 in https://github.com/janosh/pymatviz/pull/140
  • Add pymatviz/enums.py for SSOT on dataframe column and dict key names by @janosh in https://github.com/janosh/pymatviz/pull/143

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.8.1...v0.8.2

- Python
Published by janosh about 2 years ago

pymatviz - v0.8.1

What's Changed

  • Add plot_phonon_dos() for interactive plotly DOS plots by @janosh in https://github.com/janosh/pymatviz/pull/113
  • Add show_values: bool = True to ptable_heatmap[_plotly]() and last_peak_anno: str to plot_phonon_dos() by @janosh in https://github.com/janosh/pymatviz/pull/114
  • Add plot_phonon_bands_and_dos() by @janosh in https://github.com/janosh/pymatviz/pull/115
  • Spacegroup hist plotly by @janosh in https://github.com/janosh/pymatviz/pull/116
  • add_ecdf_line() utility for plotting empirical cumulative distribution functions by @janosh in https://github.com/janosh/pymatviz/pull/117
  • Add pytest fixtures df_(float|mixed) to replace deleted pd._testing.make(Mixed)DataFrame() by @janosh in https://github.com/janosh/pymatviz/pull/121
  • Minor format tweaks by @DanielYang59 in https://github.com/janosh/pymatviz/pull/120
  • Add ptable_scatter by @DanielYang59 in https://github.com/janosh/pymatviz/pull/122
  • Breaking: rename custom plotly template pymatviz_(black->dark) by @janosh in https://github.com/janosh/pymatviz/pull/123

New Contributors

  • @DanielYang59 made their first contribution in https://github.com/janosh/pymatviz/pull/120

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.8.0...v0.8.1

- Python
Published by janosh over 2 years ago

pymatviz - v0.8.0

What's Changed

  • plot_structure_2d add special site_labels: "symbol" | "species" by @janosh in https://github.com/janosh/pymatviz/pull/101
  • Breaking: rename get_crystal_sys to crystal_sys_from_spg_num by @janosh in https://github.com/janosh/pymatviz/pull/103
  • Add class TqdmDownload by @janosh in https://github.com/janosh/pymatviz/pull/104
  • ptable_heatmap add keywords cbar_range and cbar_kwargs by @janosh in https://github.com/janosh/pymatviz/pull/105
  • ptable_heatmap_plotly support 1s, 0s and negative values with log=True by @janosh in https://github.com/janosh/pymatviz/pull/107
  • Add function ptable_hists by @janosh in https://github.com/janosh/pymatviz/pull/100
  • Tweaks by @janosh in https://github.com/janosh/pymatviz/pull/108
  • Support matplotlib Axes and Figure in add_identity_line by @janosh in https://github.com/janosh/pymatviz/pull/109
  • Define custom pymatviz plotly templates by @janosh in https://github.com/janosh/pymatviz/pull/110
  • Add hist_kwds arg to ptable_hists to customize histograms by @janosh in https://github.com/janosh/pymatviz/pull/111
  • Add plot_band_structure in new pymatviz/bandstructure.py module by @janosh in https://github.com/janosh/pymatviz/pull/112

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.7.3...v0.8.0

- Python
Published by janosh over 2 years ago

pymatviz - v0.7.3

What's Changed

  • Add si_fmt() for formatting large numbers in human-readable format by @janosh in https://github.com/janosh/pymatviz/pull/98
  • Add styled_html_tag() in utils.py by @janosh in https://github.com/janosh/pymatviz/pull/99

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.7.2...v0.7.3

- Python
Published by janosh over 2 years ago

pymatviz - v0.7.2

What's Changed

  • Add keyword default_styles: bool = True to df_to_pdf by @janosh in https://github.com/janosh/pymatviz/pull/96
  • Breaking: Fix and rename df_to_(svelte->html)_table by @janosh in https://github.com/janosh/pymatviz/pull/97

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.7.1...v0.7.2

- Python
Published by janosh over 2 years ago

pymatviz - v0.7.1

What's Changed

  • Add df_to_svelte_table by @janosh in https://github.com/janosh/pymatviz/pull/93
  • annotate_bars add keyword adjust_test_pos: bool = False by @janosh in https://github.com/janosh/pymatviz/pull/94
  • Periodic table UX improvements by @janosh in https://github.com/janosh/pymatviz/pull/95

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.7.0...v0.7.1

- Python
Published by janosh over 2 years ago

pymatviz - v0.7.0

What's Changed

  • Rename ptable_heatmap(_plotly) 1st arg: elem_values->values by @janosh in https://github.com/janosh/pymatviz/pull/86
  • Breaking: rename ptable_heatmap and annotate_metrics float precision kwargs to fmt by @janosh in https://github.com/janosh/pymatviz/pull/87
  • Add patch_dict() utility by @janosh in https://github.com/janosh/pymatviz/pull/88
  • Add KDE support to bin_df_cols utility function by @janosh in https://github.com/janosh/pymatviz/pull/90
  • Split pymatviz/io.py out from pymatviz/utils.py and add df_to_pdf() export function by @janosh in https://github.com/janosh/pymatviz/pull/91
  • Bump minimum Python version to 3.9 by @janosh in https://github.com/janosh/pymatviz/pull/92

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.6.3...v0.7.0

- Python
Published by janosh over 2 years ago

pymatviz - v0.6.3

What's Changed

  • Fix "Loading [MathJax]/extensions/MathMenu.js" in Plotly figures exported to PDF #83
  • Tiny doc update in ptable.py #82
  • Better type errors #80
  • ruff enable more rule sets #79
  • Disable save_fig() in CI #78
  • adhere to PEP 484 (no implicit optional) 8e50218
  • fix ruff TCH002,TCH003 d60276b
  • add ptableheatmapplotly kwarg label_map: dict[str, str] | False | None = None ef40171
  • migrate site to eslint-plugin-svelte 91d7909

New Contributors

  • @JaGeo made their first contribution in https://github.com/janosh/pymatviz/pull/82

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.6.2...v0.6.3

- Python
Published by janosh almost 3 years ago

pymatviz - v0.6.2

What's Changed

  • More flexible annotate_metrics util by @janosh in https://github.com/janosh/pymatviz/pull/73
  • DRY workflows by @janosh in https://github.com/janosh/pymatviz/pull/74
  • Refactor make_docs.py by @janosh in https://github.com/janosh/pymatviz/pull/76
  • Per-module doc pages by @janosh in https://github.com/janosh/pymatviz/pull/77

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.6.1...v0.6.2

- Python
Published by janosh about 3 years ago

pymatviz - v0.6.1

What's Changed

  • Add kwarg axis: bool | str = "off" to plot_structure_2d() #72
  • Add ptable_heatmap cbar_precision kwarg #70
  • add changelog.md via auto-changelog 05da617
  • add half-baked /plots and /notebook pages ed171ec
  • add svelte-zoo PrevNext to notebooks pages 05368c0
  • add new option 'occurrence' for CountMode = elementcomposition|fractionalcomposition|reduced_composition bf1604a
  • refactor ptableheatmap()'s tickfmt() and add test for cbar_precision kwarg 3427e1f
  • plotstructure2d() in site /api docs fcf75de ## New Contributors
  • @Tinaatucsd made their first contribution in https://github.com/janosh/pymatviz/pull/70

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.6.0...v0.6.1

- Python
Published by janosh about 3 years ago

pymatviz - v0.6.0

What's Changed

  • Add Ruff pre-commit hook by @janosh in https://github.com/janosh/pymatviz/pull/68
  • Pyproject by @janosh in https://github.com/janosh/pymatviz/pull/69
  • 0f2386a scatter_density() use x, y args as axis labels if strings
  • c550332 rename addmaer2box() to annotatemae_r2()
  • 7da3c0c use redirect in layout.ts instead of ugly DOM href surgery to forward readme links to GH repo

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.5.2...v0.6.0

- Python
Published by janosh over 3 years ago

pymatviz - v0.5.2

What's Changed

  • b782ec4 v0.5.2
  • 25a80a9 add savefig() to pymatviz/utils.py covered by testsave_fig()
  • 1b05792 add assets/makeapidocs.py
  • e7cc488 remove google colab compat notices from example notebooks
  • b27af1c Deploy demo site to GitHub pages (#64)
  • 531133c add citation.cff
  • 396bdf4 update examples/mpbimodale_form.ipynb with MP r2SCAN beta release formation energies
  • 71f861a Configure devcontainer for running notebooks in Codespace (#63)
  • a90c437 Customizable parity stats (#61)
  • 25d700c add docformatter pre-commit hook
  • 64b545d Support dataframes in true_pred_hist() (#60)
  • 6501627 Support dataframes in relevance and uncertainty plots (#59)
  • 40e9530 Allow passing in dataframes and x, y as column names in parity plots (#58)
  • f81bd3e plotstructure2d() doc str add "multiple structures in single figure example" (#57)
  • 5c8ccbe residualhist() remove args ytrue, ypred, now takes yres directly
  • 4335001 Revert "Python 3.7 support (#55)"

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.5.1...v0.5.2

- Python
Published by janosh over 3 years ago

pymatviz - v0.5.1

What's Changed

  • Python 3.7 support by @janosh in https://github.com/janosh/pymatviz/pull/55
  • d613d99 add kwarg ymaxheadroom=float to annotate_bars()
  • f42c9d1 move plot_defaults.py into pymatviz pkg

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.5.0...v0.5.1

- Python
Published by janosh over 3 years ago

pymatviz - v0.5.0

What's Changed

  • Fix windows CI by @janosh in https://github.com/janosh/pymatviz/pull/43
  • Add test_ptable_heatmap_plotly_kwarg_combos() by @janosh in https://github.com/janosh/pymatviz/pull/44
  • fix: add .py to readme link by @sgbaird in https://github.com/janosh/pymatviz/pull/45
  • Add unary ptable heatmap plot to examples/mprester_ptable.ipynb by @janosh in https://github.com/janosh/pymatviz/pull/46
  • Add examples/mp_bimodal_e_form.ipynb by @janosh in https://github.com/janosh/pymatviz/pull/47
  • Dataset exploration by @janosh in https://github.com/janosh/pymatviz/pull/49
  • Fix plot_structure_2d() show_bonds for disordered structures by @janosh in https://github.com/janosh/pymatviz/pull/50
  • Improve tests for parity.py and relevance.py by @janosh in https://github.com/janosh/pymatviz/pull/51
  • Support log-scaled heat maps in ptable_heatmap_plotly() by @janosh in https://github.com/janosh/pymatviz/pull/53

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.4.4...v0.5.0

- Python
Published by janosh over 3 years ago

pymatviz - v0.4.4

What's Changed

  • Add kwarg exclude_elements: Sequence[str] to ptable_heatmap() in https://github.com/janosh/pymatviz/pull/40
  • [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in https://github.com/janosh/pymatviz/pull/42
  • Add kwarg show_bonds to plot_structure_2d() in https://github.com/janosh/pymatviz/pull/41
  • 0c0c043 fix flaky CI error from matminer load_dataset()
  • b61f4c0 fix plot_structure_2d() for pymatgen structures with oxidation states
  • 8ddf049 plotly add_identity_line() use fig.full_figure_for_development() to get x/y-range

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.4.3...v0.4.4

- Python
Published by janosh almost 4 years ago

pymatviz - v0.4.3

What's Changed

  • Add new plotly function sankey_from_2_df_cols() in https://github.com/janosh/pymatviz/pull/37
  • Fix GH not showing interactive Plotly figures in Jupyter in https://github.com/janosh/pymatviz/pull/39
  • c31ac55 fix add_identity_line() if plotly trace data contains NaNs
  • 444f9ba corrections to element property data in pymatviz/elements.csv + data origin link
  • f4c9fb7 document plot_structure_2d() relation to ase.visualize.plot.plot_atoms()

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.4.2...v0.4.3

- Python
Published by janosh almost 4 years ago

pymatviz - v0.4.2

What's Changed

  • Expand testing of keyword arguments in https://github.com/janosh/pymatviz/pull/31
  • Fix spacegroup_hist() crystal system counts in https://github.com/janosh/pymatviz/pull/32
  • Accept pmg structures as input for spacegroup_(hist|sunburst) in https://github.com/janosh/pymatviz/pull/33
  • pre-commit autoupdate by @pre-commit-ci in https://github.com/janosh/pymatviz/pull/34
  • add add_identity_line() in tests/test_utils.py in faa6a52
  • refactor save_and_compress_svg() in generate_assets.py in a47b811
  • improve ptable_heatmap_plotly() colorscale kwarg (#35)
  • remove ml-matrics to pymatviz migration cmd from readme in 0d123d4

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.4.1...v0.4.2

- Python
Published by janosh about 4 years ago

pymatviz - v0.4.1

What's Changed

PRs

  • Add some Jupyter notebooks with usage examples in https://github.com/janosh/pymatviz/pull/25
  • Support space groups symbols as input to spacegroup_sunburst() in https://github.com/janosh/pymatviz/pull/28
  • Support space groups symbols as input to spacegroup_hist() in https://github.com/janosh/pymatviz/pull/30

Small stuff

7ee4105 rm local structures data/structures/mp-*.yml, use matbench phonon structures instead 9f21079 GH action bump setup-python to v3 e5599a6 fix plt.tight_layout() throwing AttributeError on density_hexbin() plots (https://github.com/matplotlib/matplotlib/issues/22576) 64c95fb readme clarify not being associated with pymatgen 619075f incl jupyter notebooks in ml-matrics to pymatviz migration command

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.4.0...v0.4.1

- Python
Published by janosh about 4 years ago

pymatviz - v0.4.0

What's Changed

  • Rename package to pymatviz (formerly ml-matrics) in https://github.com/janosh/pymatviz/pull/23
  • readme add sed commands to batch-update from ml-matrics imports to pymatviz d1b6fb2
  • update package description 69fb890

Full Changelog: https://github.com/janosh/pymatviz/compare/v0.3.0...v0.4.0

- Python
Published by janosh about 4 years ago

pymatviz - v0.3.0

What's Changed

  • python-requires>=3.8 by @sgbaird in https://github.com/janosh/ml-matrics/pull/18
  • Add plot_structure_2d() in new module ml_matrics/struct_vis.py in https://github.com/janosh/ml-matrics/pull/20
    • add mlmatrics/structvis.py with ase-inspired plotstructure2d()
    • plotstructure2d() add annotate_sites: bool = True
    • add example structure plots to readme
    • fix GH workflow svgo compression
    • rename annotatesites kwarg to sitelabels, can be dict or list for custom labels
    • fix testplotstructure_2d()
    • add plotstructure2d() example with 20 random MP structures
    • plotstructure2d() drop kwargs offset, bbox, maxwidth, simplifies function, add label_kwargs
    • assert matplotlib compareimages() passes in testplotstructure2d()
    • try fix compare_images() in CI by setting explicit plt figsize
    • move savefixture() to new tests/helpers.py along with stuff in tests/init.py
    • add convenience root import for plotstructure2d() + comment crediting ASE
  • better handling of atomic numbers in count_elements() when outside range [1, 118] e46b2c4
  • git mv data/{mp-n_elements<2,mp-elements}.csv (closes #19) ad6197e
  • support atomic numbers in countelements(), only element symbols before, add kwarg textcolor in ptable_heatmap ada57cc
  • add kwargs {pre,suf}fix in addmaer2_box(), use pip cache in publish.yml 6f64c3b

New Contributors

  • @sgbaird made their first contribution in https://github.com/janosh/ml-matrics/pull/18

Full Changelog: https://github.com/janosh/ml-matrics/compare/v0.2.6...v0.3.0

- Python
Published by janosh about 4 years ago