gasparka / pyha

Describe, simulate and debug hardware in Python
Other
9 stars 1 forks source link

Update matplotlib to 3.9.0 #953

Closed pyup-bot closed 3 weeks ago

pyup-bot commented 2 months ago

This PR updates matplotlib from 3.0.0 to 3.9.0.

Changelog ### 3.9.0 ``` Highlights of this release include: - Plotting and Annotation improvements - Axes.inset_axes is no longer experimental - Legend support for Boxplot - Percent sign in pie labels auto-escaped with usetex=True - hatch parameter for stackplot - Add option to plot only one half of violin plot - axhline and axhspan on polar axes - Subplot titles can now be automatically aligned - axisartist can now be used together with standard Formatters - Toggle minorticks on Axis - StrMethodFormatter now respects axes.unicode_minus - Figure, Axes, and Legend Layout - Subfigures now have controllable zorders - Getters for xmargin, ymargin and zmargin - Mathtext improvements - mathtext documentation improvements - mathtext spacing corrections - Widget Improvements - Check and Radio Button widgets support clearing - 3D plotting improvements - Setting 3D axis limits now set the limits exactly - Other improvements - New BackendRegistry for plotting backends - Add widths, heights and angles setter to EllipseCollection - image.interpolation_stage rcParam - Arrow patch position is now modifiable - NonUniformImage now has mouseover support ``` ### 3.9.0rc2 ``` This is the second release candidate for the meso release 3.9.0. ``` ### 3.8.4 ``` This is the fourth micro release of the 3.8 series. Highlights of the 3.8.4 release include: - Enable building against numpy 2.0; released wheels are built against numpy 2 - macosx: Clean up single-shot timers correctly - Add a draw during show for macos backend - Fix color sequence data for Set2 and Set3 - gtk: Ensure pending draws are done before GTK draw - Update "Created with" url in hand.svg - Avoid modifying user input to Axes.bar - fix quiver3d incorrect arrow colors ``` ### 3.8.3 ``` This is the third micro release of the 3.8 series. Highlights of the 3.8.3 release include: - Improvements to the MacOS backend - Fix hanging on `plt.pause` - Fix warnings about "Secure coding is not enabled for restorable state" - Fix crash at exit for PGF backend ``` ### 3.8.2 ``` This is the second bugfix release of the 3.8 series. Highlights of this release include: - Fix a segfault in the MacOS backend when running on Python 3.12 - Fix Contour labeling manual positions selecting incorrect contours. - Various documentation improvements ``` ### 3.8.1 ``` This is the first bugfix release of the 3.8.x series. This release contains several bug fixes and adjustments: - Bump setuptools required version because of setuptools_scm v8 - Update ``find_nearest_contour`` and revert contour deprecations - ``allsegs`` and ``allkinds`` return individual segments - Restore default behavior of hexbin mincnt with C provided - Try/except import of Axes3D - Ensure valid path mangling for ContourLabeler - BLD: Remove development dependencies from sdists - FIX 2-tuple of colors in to_rgba_array - Fix issue with non-string labels and legend - Fix issue with locale comma when not using math text - Various type hinting improvements - Various documentation improvements - Improvements to the MacOS backend ``` ### 3.7.5 ``` This is the fifth bugfix release of the 3.7.x series. This release contains two bug-fixes: - Fix hanging on `plt.pause` on the MacOS backend - Fix crash on exit when using the PGF backend on Windows ``` ### 3.7.4 ``` This is the fourth bugfix release of the 3.7.x series. This release contains one bug-fix: - Fix a segmentation fault when resizing on Python 3.12 and macOS 14 ``` ### 3.7.3 ``` This is the third bugfix release of the 3.7.x series. This release contains several bug-fixes and adjustments: * Add Python 3.12 wheels * Update the license for the bundled colorbrewer colormap data * Fix Cairo backend when using cairocffi * Fix axes_grid1 inset axes with `bbox_inches=tight` * Fix bugs in `Path3DCollection` / `Poly3DCollection` constructors * Fix setting array labelcolor on Tick * Improve compatibility with latest NumPy * Stop warning when calling `tight_layout` multiple times ``` ### 3.7.2 ``` This is the second bugfix release of the 3.7.x series. This release contains several bug-fixes and adjustments: * Avoid modifying input masks in `pcolor`/`pcolormesh` * Fix 3D set_aspect error cases * Fix IPython's `%pylab` mode detection * Fix `Figure.get_constrained_layout_pads()` * Fix `Legend.set_draggable()` with `update="bbox"` * Fix `TransformedBbox.{,full_}contains` * Fix clipping of `bar_label` text * Fix colorbar size when saving with explicit `bbox_inches` * Fix errors when an input is entirely NaN * Fix leaks of exception tracebacks and `LayoutGrid` objects * Fix non-interpolated imshow in PDF export * Fix palettized image optimization in PDF export * Fix pgf tests with TeXLive 2022 * Fix removal of `Axes` that contain widgets that are grabbing the mouse * Fix removal of draggable artists * Fix subslice optimization for long, fully nan lines * Fix tight layout if Figure has an existing layout manager * Fix window extent of AnnotationBbox before first draw * Fix wspace and hspace in subfigures * Improve Qt compatibility * Improve compatibility with Python 3.12 * Prevent under the hood downcasting of values in `xcorr` * Remove some NumPy function overrides from `pylab` * Remove warning with symlog scales on mouseover ``` ### 3.7.1 ``` This is the first bugfix release of the 3.7.x series. This release contains several bug-fixes and adjustments: * Ensure Qhull license is included in binary wheels * Fix application of rcParams on Axes labels * Fix compatibility with Pandas datetime unit converter * Fix compatibility with latest GTK4 * Fix import of styles with relative path * Fix Lasso unresponsiveness when clicking and immediately releasing * Fix pickling of draggable legends * Fix RangeSlider.set_val when new value is outside existing value * Fix size of Tk spacers when changing display DPI * Fix wrapped text in constrained layout * Improve compatibility with third-party backends * Improve error if animation save path does not exist ``` ### 3.6.3 ``` This is the third bugfix release of the 3.6.x series. This release contains several bug-fixes and adjustments: * Fix Artist removal from `axes_grid1` Axes classes * Fix `inset_locator` in subfigures * Fix `scatter` on masked arrays with units * Fix colorbar ticks with log norm contours * Fix deprecation warnings in GTK4 backend * Fix using relative paths in `HTMLWriter` * Improve failure message from rcParams string validation for tuple inputs * Improve performance of QtAgg backends * No longer modify `pil_kwargs` argument to `imsave` and `savefig` ``` ### 3.6.2 ``` This is the second bugfix release of the 3.6.x series. This release contains several bug-fixes and adjustments: * Avoid mutating dictionaries passed to `subplots` * Fix `bbox_inches='tight'` on a figure with constrained layout enabled * Fix auto-scaling of `ax.hist` density with `histtype='step'` * Fix compatibility with PySide6 6.4 * Fix evaluating colormaps on non-NumPy arrays * Fix key reporting in pick events * Fix thread check on PyPy 3.8 * Handle input to `ax.bar` that is all NaN * Make rubber band more visible on Tk and Wx backends * Restore (and warn on) seaborn styles in `style.library` * Restore `get_renderer` function in deprecated `tight_layout` * nb/webagg: Fix resize handle on WebKit browsers (e.g., Safari) ``` ### 3.6.1 ``` This is the first bugfix release of the 3.6.x series. This release contains several bug-fixes and adjustments: * A warning is no longer raised when constrained layout explicitly disabled and tight layout is applied * Add missing `get_cmap` method to `ColormapRegistry` * Adding a colorbar on a `ScalarMappable` that is not attached to an `Axes` is now deprecated instead of raising a hard error * Fix `barplot` being empty when first element is NaN * Fix `FigureManager.resize` on GTK4 * Fix `fill_between` compatibility with NumPy 1.24 development version * Fix `hexbin` with empty arrays and log scaling * Fix `resize_event` deprecation warnings when creating figure on macOS * Fix build in mingw * Fix compatibility with PyCharm's interagg backend * Fix crash on empty `Text` in PostScript backend * Fix generic font families in SVG exports * Fix horizontal colorbars with hatches * Fix misplaced mathtext using `eqnarray` * `stackplot` no longer changes the Axes cycler ``` ### 3.5.3 ``` This is the third bugfix release of the 3.5.x series. This release contains several bug-fixes and adjustments: * Fix alignment of over/under symbols * Fix bugs in colorbars: * alpha of extensions * `drawedges=True` with extensions * handling of `panchor=False` * Fix builds on Cygwin and IBM i * Fix contour labels in `SubFigure`s * Fix cursor output: * for `imshow` with all negative values * when using `BoundaryNorm` * Fix interactivity in IPython/Jupyter * Fix NaN handling in `errorbar` * Fix NumPy conversion from AstroPy unit arrays * Fix positional *markerfmt* passed to `stem` * Fix unpickling: * crash loading in a separate process * incorrect DPI when HiDPI screens ``` ### 3.5.2 ``` This is the second bugfix release of the 3.5.x series. This release contains several bug-fixes and adjustments: * Add support for Windows on ARM (source-only; no wheels provided yet) * Add year to concise date formatter when displaying less than 12 months * Disable `QuadMesh` mouse cursor to avoid severe performance regression in `pcolormesh` * Delay backend selection to allow choosing one in more cases * Fix automatic layout bugs in EPS output * Fix autoscaling of `scatter` plots * Fix clearing of subfigures * Fix colorbar exponents, inversion of extensions, and use on inset axes * Fix compatibility with various NumPy-like classes (e.g., Pandas, xarray, etc.) * Fix constrained layout bugs with mixed subgrids * Fix `errorbar` with dashes * Fix errors in conversion to GTK4 and Qt6 * Fix figure options accidentally re-ordering data * Fix keyboard focus of TkAgg backend * Fix manual selection of contour labels * Fix path effects on text with whitespace * Fix `quiver` in subfigures * Fix `RangeSlider.set_val` displaying incorrectly * Fix regressions in collection data limits * Fix `stairs` with no edgecolor * Fix some leaks in Tk backends * Fix tight layout DPI confusion * Fix tool button customizability and some tool manager bugs * Only set Tk HiDPI scaling-on-map for Windows systems * Partially allow TTC font collection files by selecting the first font ``` ### 3.5.1 ``` This is the first bugfix release of the 3.5.x series. This release contains several critical bug-fixes: * fix installation issues when setting a default backend * fix `add_lines` on horizontal colorbars * fix `streamplot` with start points on right or top edge * fix colorbars with boundaries or `NoNorm` * fix colorbars with negative contours * fix colorbars with tight layout * fix setting Axis label alignment to center * fix subfigure tight bounding box * fix subplot parameter window on macosx backend * fix unit handling in `Collections.set_offsets` * fix unyt integration in `errorbar` * re-display date offset in `ConciseDataFormatter` after zoom * reduce `do_3d_projection` deprecation warnings in external artists ``` ### 3.4.3 ``` This is the third bugfix release of the 3.4.x series. This release contains several critical bug-fixes: * Clarify deprecation of `Axes.figbox` * Disable `MultiCursor` widget on `Axes` subplots which it is not tracking * Don't simplify path in `LineCollection.get_segments` * Fix DPI in subfigures, affecting tick spacing, and scatter marker size * Fix broken EPS output when using Type 42 STIX fonts * Fix change in tick behaviour when calling `Axes.clear` * Fix class docstrings for `Norm`s created from `Scale`s * Fix compatibility with NumPy 1.21.0 * Fix crash on broken TrueType fonts * Fix incorrect hits from `Path.intersects_path` * Fix leak if affine_transform is passed invalid vertices * Fix legends of `stackplot` with `edgecolors='face'` * Fix plot directive when building in parallel * Fix `supxlabel` and `supylabel` behaviour in constrained layout * Fix tests with latest Inkscape and Ghostscript * Improve `DateFormatter` styling for month names when `usetex=True` * Re-disable autoscaling after interactive zoom * Work around bug in Pillow 8.3.0 ``` ### 3.4.2 ``` This is the second bugfix release of the 3.4.x series. This release contains several critical bug-fixes: * Generate wheels usable on older PyPy7.3.{0,1} * Fix compatibility with Python 3.10 * Add `subplot_mosaic` Axes in the order the user gave them to us * Correctly handle 'none' *facecolors* in `do_3d_projection` * Ensure that Matplotlib is importable even if there's no HOME * Fix `CenteredNorm` with *halfrange* * Fix `bar_label` for bars with NaN values * Fix clip paths when zoomed such that they are outside the figure * Fix creation of `RangeSlider` with *valinit* * Fix handling of "d" glyph in backend_ps, fixing EPS output * Fix handling of datetime coordinates in `pcolormesh` with Pandas * Fix processing of some `errorbar` arguments * Fix removal of shared polar Axes * Fix resetting grid visibility * Fix subfigure indexing error and tight bbox * Fix textbox cursor color * Fix TkAgg event loop error on window close * Ignore errors for sip with no setapi (Qt4Agg import errors) ``` ### 3.4.1 ``` This is the first bugfix release of the 3.4.x series. This release contains several critical bug-fixes: * fix errorbar when specifying fillstyle * fix Inkscape cleanup at exit on Windows for tests * fix legends of colour-mapped scatter plots * fix positioning of annotation fancy arrows * fix size and color rendering for 3D scatter plots * fix suptitle manual positioning when using constrained layout * respect antialiasing settings in cairo backends as well ``` ### 3.4.0 ``` Highlights of this release include: - Figure and Axes creation / management - New subfigure functionality - Single-line string notation for `subplot_mosaic` - Changes to behavior of Axes creation methods (`gca`, `add_axes`, `add_subplot`) - `add_subplot`/`add_axes` gained an *axes_class* parameter - Subplot and subplot2grid can now work with constrained layout - Plotting methods - `axline` supports transform parameter - New automatic labeling for bar charts - A list of hatches can be specified to `bar` and `barh` - Setting `BarContainer` orientation - Contour plots now default to using `ScalarFormatter` - `Axes.errorbar` cycles non-color properties correctly - `errorbar` *errorevery* parameter matches *markevery* - `hexbin` supports data reference for *C* parameter - Support callable for formatting of Sankey labels - `Axes.spines` access shortcuts - New `stairs` method and `StepPatch` artist - Added *orientation* parameter for stem plots - Angles on Bracket arrow styles - `TickedStroke` patheffect - Colors and colormaps - Collection color specification and mapping - Transparency (alpha) can be set as an array in collections - pcolormesh has improved transparency handling by enabling snapping - IPython representations for Colormap objects - `Colormap.set_extremes` and `Colormap.with_extremes` - Get under/over/bad colors of Colormap objects - New `cm.unregister_cmap` function - New `CenteredNorm` for symmetrical data around a center - New `FuncNorm` for arbitrary normalizations - GridSpec-based colorbars can now be positioned above or to the left of the main axes - Titles, ticks, and labels - supxlabel and supylabel - Shared-axes `subplots` tick label visibility is now correct for top or left labels - An iterable object with labels can be passed to `Axes.plot` - Fonts and Text - Text transform can rotate text direction - `matplotlib.mathtext` now supports *overset* and *underset* LaTeX symbols - *math_fontfamily* parameter to change `Text` font family - `TextArea`/`AnchoredText` support *horizontalalignment* - PDF supports URLs on Text artists - rcParams improvements - New rcParams for dates: set converter and whether to use interval_multiples - Date formatters now respect *usetex* rcParam - Setting *image.cmap* to a Colormap - Tick and tick label colors can be set independently using rcParams - 3D Axes improvements - Errorbar method in 3D Axes - Stem plots in 3D Axes - 3D Collection properties are now modifiable - Panning in 3D Axes - Interactive tool improvements - New `RangeSlider` widget - Sliders can now snap to arbitrary values - Pausing and Resuming Animations - Sphinx extensions - `plot_directive` *caption* option - Backend-specific improvements - Consecutive rasterized draws now merged - Support raw/rgba frame format in `FFMpegFileWriter` - nbAgg/WebAgg support middle-click and double-click - nbAgg support binary communication - Indexed color for PNG images in PDF files when possible - Improved font subsettings in PDF/PS - Kerning added to strings in PDFs - Fully-fractional HiDPI in QtAgg - wxAgg supports fullscreen toggle ``` ### 3.4.0rc3 ``` This is the third release candidate for Matplotlib 3.4.0. ``` ### 3.4.0rc2 ``` This is the second release candidate for Matplotlib 3.4.0. ``` ### 3.4.0rc1 ``` This is the first release candidate for Matplotlib 3.4.0. ``` ### 3.3.4 ``` This is the fourth bugfix release of the 3.3.x series. This release contains several critical bug-fixes: * Fix WebAgg initialization. * Fix parsing `QT_API` setting with mixed case. * Fix build with link-time optimization disabled in environment. * Fix test compatibility with NumPy 1.20. * Fix test compatibility with pytest 6.2. ``` ### 3.3.3 ``` This is the third bugfix release of the 3.3.x series. This release contains several critical bug-fixes: * Fix calls to `Axis.grid` with argument `visible=True`. * Fix fully masked `imshow`. * Fix inconsistent color mapping in scatter for 3D plots. * Fix notebook/nbAgg figures when used with ipywidgets in the same cell. * Fix notebook/nbAgg/WebAgg on older (e.g., Firefox ESR) browsers. * Fix pcolormesh with `datetime` coordinates. * Fix performance regression with `datetime`s. * Fix singular ticks with small log ranges. * Fix timers/animations on wx and notebook backends. * Remove certifi as a hard runtime dependency. ``` ### 3.3.2 ``` This is the second bugfix release of the 3.3.x series. This release contains several critical bug-fixes: * fix `Axis` scale on twinned `Axes` * fix auto-close of `Figure`s in nbagg * fix automatic title placement if `Axes` is off the `Figure` * fix autoranging of log scales with barstacked histogram * fix extra redraws when using `Button` or `TextBox` widgets * fix imshow with `LogNorm` and large vmin/vmax ranges * fix plotting Pandas `DataFrame` with string `MultiIndex` * fix `scatter` with `marker=''` * fix `scatter3d` color/linewidth re-projection * fix state of mode buttons in TkAgg backends * include license files in built distribution * reduce Visual C++ runtime requirements on Windows ``` ### 3.3.1 ``` This is the first bugfix release of the 3.3.x series. This release contains several critical bug-fixes: * fix docstring import issues when running Python with optimization * fix `hist` with categorical data, such as with Pandas * fix install on BSD systems * fix nbagg compatibility with Chrome 84+ * fix ordering of scatter marker size in 3D plots * fix performance regression when plotting `Path`s * fix reading from URL in `imread` * fix several regressions with new date epoch handling * fix some bad constrained and tight layout interactions with colorbars * fix use of customized toolbars in TkAgg and WXAgg backends ``` ### 3.3.0 ``` Highlights of this release include: - Provisional API for composing semantic axes layouts from text or nested lists - New Axes.sharex, Axes.sharey methods - Turbo colormap - colors.BoundaryNorm supports extend keyword argument - Text color for legend labels - Pcolor and Pcolormesh now accept shading='nearest' and 'auto' - Allow tick formatters to be set with str or function inputs - New Axes.axline method - Dates use a modern epoch - Improved font weight detection - Axes3D no longer distorts the 3D plot to match the 2D aspect ratio - More consistent toolbar behavior across backends - Toolbar icons are now styled for dark themes - Cursor text now uses a number of significant digits matching pointing precision - Functions to compute a Path's size - savefig() gained a backend keyword argument - Saving SVG now supports adding metadata - Saving PDF metadata via PGF now consistent with PDF backend - NbAgg and WebAgg no longer use jQuery & jQuery UI For the full details please see the [What's New](https://matplotlib.org/3.3.0/users/whats_new.html) and [API changes](https://matplotlib.org/3.3.0/api/api_changes.html) in the documentation. ``` ### 3.2.2 ``` This is the second bugfix release of the 3.2.x series. This release contains several critical bug-fixes: - support fractional HiDPI scaling with Qt backends - support new Python and fix syntax errors in legacy Python - support new Qt 5 and fix support for Qt 4 - fix animation writer fallback - fix figure resizing - fix handling of large arcs - fix issues with tight layout - fix saving figures after closing windows or under certain size conditions - fix scatter when specifying a single color - fix several memory leaks - fix unexpected autoscaling behavior - fix various issues with usetex - various minor bug and documentation fixes ``` ### 3.2.1 ``` This is the first bugfix release of the 3.2.x series. This release contains several critical bug-fixes: - fix `Quiver.set_UVC` calls with scalar inputs - fix `bezier.get_parallels` failure from floating point rounding errors - fix markers specified as tuples (polygons, stars, or asterisks) - fix saving PNGs to file objects in some places - fix saving figures using the nbAgg/notebook backend - fix saving with tight layout using the PGF backend - fix setting custom datapath in rcParams (note: it is still deprecated) - fix various issues running setup.py in non-CI environments - fix xpdf distiller - various minor bug and documentation fixes ``` ### 3.2.0rc1 ``` This is the first release candidate from Matplotlib 3.2 ``` ### 3.1.1 ``` The first bug-fix release of the 3.1 series * Locator.nonsingular return order API change Lots of backports of various bug fixes. ```
Links - PyPI: https://pypi.org/project/matplotlib - Changelog: https://data.safetycli.com/changelogs/matplotlib/
pyup-bot commented 3 weeks ago

Closing this in favor of #968