Skip to content

v0.3.2

Choose a tag to compare

@github-actions github-actions released this 18 Oct 06:18
· 30 commits to main since this release
dc06006

Highlights

  • Heatmaps, 2-D histograms and meshes drawn as one image encode faster in SVG and produce smaller files. A 1,000 × 1,000 heatmap's SVG renders in about 0.1 s instead of 0.2 s and drops from 4.5 MB to 2.6 MB. Decoded pixels, vector output and PNG output are unchanged.
  • The performance section of the README now compares end-to-end Python calls with matplotlib 3.11.2 on a standard GitHub Actions runner. umber is faster in every case measured, from 1.1× (hexbin) to 3.7× (a small figure with a legend), and imports 4.7× faster.

Fixes

  • Hexbins whose fit and tick labels alternated without settling, which failed with "the hexagon bounds and tick labels do not settle" (for example 1,000,000 normal points at grid size 50), now render. Layouts that already settled are unchanged.
  • Several hexbins on one axes share one lattice, so their hexagons stay regular when their ranges differ.
  • When an axis uses fewer automatic ticks to make room and the remaining labels need more decimals, the labels are kept apart instead of overlapping. The axis range does not move.

New errors

  • Hexbins on one axes whose ranges are too far apart to share one lattice (about 2⁴⁰ cells) raise DataError: "the hexbin ranges are too far apart for one lattice of regular hexagons on these axes.", with the hint "draw them on separate axes, or set explicit limits."

What's Changed

  • Benchmark Python calls next to matplotlib on GitHub's standard runner by @TJ-Junhao in #138
  • Keep tick labels apart when fewer ticks widen the labels by @TJ-Junhao in #139
  • Settle hexbin layouts that cycled with their tick labels by @TJ-Junhao in #141
  • Measure coverage in CI and report it to Codecov by @TJ-Junhao in #140
  • Encode large embedded images faster in SVG by @TJ-Junhao in #142
  • Version 0.3.2 by @TJ-Junhao in #143

Full Changelog: v0.3.1...v0.3.2