Hello everyone! I am happy to announce ImPlot v0.17, the first release since I (@brenocq) stepped up as the new maintainer.
I want to thank @epezent for creating this incredible library and for trusting me to steward it moving forward. ImPlot is now back under active development!
📦 ImPlot3D v0.3 Released
Today we are also releasing ImPlot3D v0.3.
ImPlot3D is an extension of ImPlot designed for high-performance 3D visualization. It shares the same API philosophy as ImPlot and ImGui, making it easy to integrate into your existing projects. v0.3 brings massive precision improvements, new log scales, and image plotting.
🔭 Looking Ahead: ImPlotSpec (v0.18)
We are planning some exciting changes to improve the overall API experience for the next release (v0.18). The goal is to introduce ImPlotSpec, which will simplify how plots are configured and styled.
We are currently looking for community feedback on this design. Please check out #519 and let us know your thoughts.
✨ Feature Highlights
Legend Scrolling
Legends can now handle large numbers of items gracefully with the new scrolling support, implemented by @epezent.
Exploding Pie Charts
Pie charts just got more interactive! You can now use the ImPlotPieChartFlags_Exploding flag to highlight slices on hover, thanks to @SamuMazzi.
What's Changed
- Implement legend scrolling and update scroll capture behavior when zooming by @epezent in #504
- Ability to query point, line and rect drags for their click, hovered and held states by @pozemka in #507
- Fix indexing logic of GetterHeatmapColMaj::operator() by @cwahn in #511
- Small Pie Chart enhancements by @Ben1138 in #412
- Fix EndPlot() not deducing auto color for ImPlotCol_PlotBorder by @elvissteinjr in #517
- Fix typo in user guide by @helmutbuhler in #583
- Reintroduce header guards for
IMGUI_DEFINE_MATH_OPERATORSto fix compiler warnings by @micb25 in #546 - refactor a few time utils; add Now/Today by @epezent in #605
- Added IMGUI_DISABLE_DEMO_WINDOWS support by @StewMcc in #603
- feat: add
ImPlotPieChartFlags_Explodingby @SamuMazzi in #592 - Fix MyDataGetter example after #319 by @szym-nuro in #532
- Fixes for internal API changes in future 1.92.x API by @ocornut in #614
- Fixes for internal API changes in 1.92.x: PlotImage() uses ImTextureRef instead of ImTextureID by @ocornut in #616
- various typo fixes by @bostick in #642
- Drag functions parameter: held -> out_held in header by @mihaly-sisak in #641
- fix: missing default constructors by @brenocq in #645
- Add IMPLOT_API to constructors and functions of ImPlotPoint, ImPlotRange, and ImPlotRect by @Cidolfas in #549
- Add ImPlotLegendFlags_Reverse by @howprice in #640
- PlotDigital : Fix Digital plots do not respect axis inversion by @ozlb in #522
- Fix DPI scaling for hardcoded plot sizes in demo by @prybicki in #636
New Contributors
- @pozemka made their first contribution in #507
- @cwahn made their first contribution in #511
- @Ben1138 made their first contribution in #412
- @elvissteinjr made their first contribution in #517
- @helmutbuhler made their first contribution in #583
- @micb25 made their first contribution in #546
- @StewMcc made their first contribution in #603
- @SamuMazzi made their first contribution in #592
- @szym-nuro made their first contribution in #532
- @bostick made their first contribution in #642
- @mihaly-sisak made their first contribution in #641
- @brenocq made their first contribution in #645
- @Cidolfas made their first contribution in #549
- @howprice made their first contribution in #640
- @prybicki made their first contribution in #636
Full Changelog: v0.16...v0.17



