-
-
Notifications
You must be signed in to change notification settings - Fork 7.9k
Enforce that Line data modifications are sequences #22329
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
cd08d18
to
36b4e35
Compare
I am not fully sold that we should not accept scalars at this level. It does some handy to be able to set scalars (as shown by us doing a bunch of times internally!) |
We do hit this quite a lot for something that is not supposed to be supported. if we want to do this, we'll have to do a deprecation, I think. Or otherwise update the documentation to allow it. |
I think this does need an API change note that we are becoming stricter about this. |
If this needs an API note, then I wonder what we should do for 3.5.2 (from the original report)? |
I would like @timhoffm to weigh in on this. There is a bunch of weird behavior with this and it is hard to track through exactly where in the code scalars get auto-magically up-cast to arrays (in part because length 1 things having anomalous broadcasting rules anyway). On one hand, |
I might have been the cleanest option to not allow scalars in the first place, but that ship has sailed. I haven't taken the time yet to come to a definitive decision, some preliminary thoughts.
|
That is stricter than I thought it was so I mostly retract my concerns. However I think that # What is the rationale for the following two lines?
# And why is there not a similar pair with _x and _y reversed? because we were only doing it for y being length one. However, if we go way back the original behavior was to broadcast length 1 arrays for y, eventually we picked up the symmetric version for x, and then with the last refactor we accidentally picked up the ability to do it for scalars. I have not checked that the few places changed here post-date e34a333. Thus after that somewhat disjointed discussion / archaeology trip, I think I am in favor of this but have a slight preference for having |
@@ -1228,6 +1228,8 @@ def set_xdata(self, x): | |||
---------- | |||
x : 1D array | |||
""" | |||
if not np.iterable(x): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- You can remove the corresponding checks in
__init__
. - Do you want to check instead
np.ndim(x) == 1
? (A 2D input doesn't really help either...)
FWIW I agree with Tim that a strict low-level API is preferable. We should definitely not broadcast (1,) to (N,); I would also prefer not broadcasting () (scalar) to (1,). |
The current state is that the low level API is strict and does not promote 0D to 1D. |
Doc failure is real and is an instance of the error introduced by this PR. |
When creating a Line2D, x/y data is required to be a sequence. This is not enforced when modifying the data, or with Line3D.
…ersion 3.8.0 Aalok Chhetri (3): adding pytest==6.2.0 Change the pytest verison to 7.0.0 pn pytest.ini and minver.txt updating matplotlib/doc/devel/dependencies.rst Adam J. Stewart (1): broken_barh: fix docstring typo Albert Y. Shih (1): Fixed a bug where rcParams settings were being ignored for formatting axes labels (#25237) Alissa Hodge (1): DOC: update/fix autoscaling documentation (#25656) Almar Klein (1): Update font_manager to only use registry on Win Andreas Deininger (1): Fixing typos Antony Lee (135): Directly support ^% in pgf. Also handle `\displaystyle` and `\mathdefault` at the TeX level. Bump test tolerance by 1-per-thousand on old ghostscripts. Deprecate AxisArtistHelpers with inconsistent loc/nth_coord. Remove some long-obsolete commented code in grid_helper_curvelinear. Remove contour warning for "no-valid-levels". Deprecate Bbox.anchored() with no container. Small unrelated cleanups/style fixes. Cleanup bullseye plot example. Rewrite bullseye example to use bar() instead of pcolormesh(). Simplify handling of out-of-bound values `Colormap.__call__`. Clarify/shorten gca management in colorbar(). Simplify "artist reference" example. Tweak titles pyplot examples. Remove note that mathtext.fontset = "custom" is unsupported. Reword awkward sentence in FAQ. Correctly pass valinit as keyword in SliderTool. Deprecate LocationEvent.lastevent. tk blitting to destroyed canvases should be a noop, not a segfault. Fix cursor_demo wrt. Line2D.set_x/ydata not accepting scalars anymore. Fix outdated comment re: _update_label_position. Consistently document shapes as (M, N), not MxN. Inline ContourSet._make_paths. Minor style tweaks to freetype build. Don't special-case getSaveFileName in qt_compat anymore. On macOS, limit symbols exported by extension modules linking FreeType. Group shape/dtype validation logic in image_resample. Use "array" instead of "numpy array" except when emphasis is needed. Don't handle unknown_symbols in `\operatorname`. Avoid calling vars() on arbitrary third-party manager_class. Cleanup wx docstrings. Support make_compound_path concatenating only empty paths. Simplify transforms invalidation system. Limit full-invalidation of CompositeGenericTransforms. Cleanup gradient_bar example. Use setattr_cm more. Make draggable legends picklable. Support pickling of figures with aligned x/y labels. Remove unused menu field from macos NavigationToolbar2. Deprecate QuadContourSet.allsegs, .allkinds, .tcolors, .tlinewidths. Store FloatingAxes "extremes" info in fewer places. Fix disconnection of callbacks when draggable artist is deparented. Adjust parent axes limits when clearing floating axes. Remove unnecessary norm typecheck in tripcolor(). Add references to backend_{gtk3,gtk4,wx} in docs. Autoload numpy arrays in get_sample_data. Use get_sample_data(..., asfileobj=False) less. Deprecate tostring_rgb. Remove unnecessary calls to Formatter.set_locs. Expire more mpl3.6 deprecations. Add Axes.ecdf() method. Restore autolimits status when pressing "home" key. In Artist.contains, check that moussevents occurred on the right canvas. Remove unused private SpanSelector._pressv and ._prev. Deprecate axes_divider.AxesLocator. Rename parameter of Annotation.contains and Legend.contains. Simplify outdated Image.contains check. Make guiEvent available only within the event handlers. Use symbolic operator names (moveto, lineto) in contour_manual example. Don't use deprecated cm.get_cmap in qt figureoptions. Use true positional args in check_foo APIs instead of simulating them. Annotation cleanups. Deprecate unused NavigationToolbar2QT signal. Move AxisArtistHelpers to toplevel. Cleanup GridHelperCurveLinear/GridFinder. Tweak axis_direction demo. Small axislines.Axes cleanups. Cleanup demo_axes_divider. Shorten anchored_artists example. Cleanup demo_text_path. Deprecate AnchoredEllipse. Document default value of corner_mask in the corresponding example. Emit explanatory exception when no temporary cachedir can be created. Fix invalid range validators. Deprecate Tick.set_label{1,2}. Simplify lasso_demo example. Handle exceptions in numpy::array_view<...>::set(). Get dlerror() immediately after dlclose() fails. Fix incorrect usage of nargs_error. Tweak demo_edge_colorbar. Correctly pass location when constructing ImageGrid colorbar. Cleanup demo_axes_grid{,2}. Simplify isort config. Fix incorrect doc references. Check gridspecness of colorbars on the right figure. Deprecate CbarAxesBase.toggle_label. Support spine.set() in SpinesProxy. Cleanup time_series_histogram example. Cleanups to Annotation. Fix TransformedBbox.{,full_}contains. Update performance note of hist() to mention stairs(). Cleanup scalarformatter.py example. Let widgets/clabel better handle overlapping axes. Remove unused/unnecessary parts of _macosx.m View. Document that GridSpec.get_subplot_params ignores gridspec.figure. Fix subslice optimization for long, fully nan lines. Let AxesGrid support Axes subclasses that don't override axis(). Simplify delaxes. Better document the semantics of get_text_width_height_descent. Cleanup AxesGrid Further simplify AxesGrid._init_locators. Further streamline the rainbow_text example. Tweak AnnotationBbox coords specification. Tweak Annotation docstring. Factor out common checks for set_data in various Image subclasses. Deprecate unused "frac" key in annotate() arrowprops. Shorten axes_grid1 inset_locator code. Make sure we don't use C++14 accidentally. Dedupe some C++ templates. Add missing spacer in tk toolmanager toolbar. Turn ContourSet into a standard Collection artist. Accept some baseline changes. Add note to remove texts in baselines when they are regenerated. Deprecate removal of explicit legend handles whose label starts with _. Factor out legend/figlegend nargs validation. Deprecate FigureCanvasBase.switch_backends. Better document the ContourSet API change. Simplify SecondaryAxis.set_color. Document changes. Deprecate cbook.Stack. Deprecate inset_locator.InsetPosition. Emit xlim_changed on shared axes. Only auto-change axes aspect in imshow if image transform is/contains transData. Support standard Axes in RGBAxes. Clarify that ImageGrid requires limits-sharing. Deprecate wrappers combining axes_grid1 and axisartist. Fix pickling of axes property cycle. Tweak Sankey docs. Fix bad histogramming bins in mri/eeg example. Tweak hist2d docstring. Make annotate/OffsetFrom unaffected by later mutation of coordinates. Fix support for Ctrl-C on the macosx backend. Do not close figures on backend switch. Remove auto from supported ps.papersizes in matplotlibrc. Deprecate PdfPages(keep_empty=True). Artem Shekhovtsov (2): Remove outdated comment in `Artist.__getstate__` FIX: axes3d.scatter color parameter doesn't decrease in size Astra (1): default value for nonpositve parameter Brandon Dusch (1): Update galleries/users_explain/quick_start.py BuildTools (3): fixed issue #25682 Added unit test to verify axes limits in Axes.fill_between updated to check transform branches Caden Gobat (1): Add CITATION.cff file Chahak Mehta (3): Support only positional args for data in contour Update PULL_REQUEST_TEMPLATE.md to include issue cross-reference. Reword message to link issue. Clément Robert (2): ENH: switch mpl_toolkits to implicit namespace package (PEP 420) FIX: resolve an issue where no ticks would be drawn for a colorbar with SymLogNorm and ranging exactly from 0 to linthresh ColeBurch (1): Fix issue #25458 by changing "normed" to "density" DWesl (12): BUG: Import Python.h before stdlib headers TST: Catch fork failures and mark them as xfail instead of fail. CI: Add a Cygwin run to GHA CI. CI: Move Cygwin CI to new file, trigger on label. CI: Also run Cygwin CI when workflow changed. STY,FIX: Apply suggestions from code review FIX: Include closing quote in conditional. TST,STY: Make a subprocess.run helper to xfail fork failures. FIX: Fix type and default for argument of new testing helper. TST,FIX: Provide default env and switch to more recent name for argument. DOC,FIX: Numpydoc section name is Parameters, not Arguments. DOC,STY,FIX: Fix syntax for names keyword argument. Daniele Nicolodi (1): BUG: fix IPython's %pylab mode detection David Kaméus (1): mnt: simplify stride calculation in LogLocator.tick_values David Stansby (21): Fix polar transform with non-linear scales Add docs for polar transform Add a polar log test Fix line widths Math formatting in PolarTransform docstring Fix indentation Improve 3D quiver test Force style to mpl20 Ensure TwoSlopNorm always has two slopes Fix tests Include midpoint in tests Add a behaviour change note Update flake8 per-file ignores Add isort config Run isort on examples and tutorials Clean + comment MaxNLocator (#25166) Expire wx canvas param deprecation Document PowerNorm parameters Fix comments on clipping in norms Add plot_types directory to isort Apply isort to plot_types directory Dusch4593 (1): Fix typo in Quick start guide tutorial Eero Vaher (1): Stop recommending `ncol` in legend examples Elliott Sales de Andrade (156): Flatten cbook into a single file Expire deprecations from cbook Fix toggling layout engines Remove remaining deprecations from 3.5 Remove additional deprecations from 3.5 Drop Python 3.8 from Cygwin CI job Fix Cygwin CI trigger on the schedule ci: Only attempt to upload nightlies from successful builds ci: Re-add the login shell to nightlies jobs Add styling support to Check and Radio buttons Warn if activecolor and a facecolor are provided Handle modification of RadioButtons.activecolor Add what's new docs for button styling Remove dead code from deprecated-and-removed block Revert "Use system distutils instead of the setuptools copy" DOC: Fix broken cross-reference when building PDF Fix distribution of test data Clean up GitHub statistics script Fix extra line in Zenodo cache script Update release guide for current practices Fix Lasso line cleanup Fix setting CSS with latest GTK4 Increase timeout for interactive backend tests Clean up legend loc parameter documentation Fix RangeSlider.set_val when outside existing value TST: Increase test_set_line_coll_dash_image tolerance slightly. Disable discarded animation warning on save BLD: Pre-download Qhull license to put in wheels Pin sphinx themes more strictly Tk: Fix size of spacers when changing display DPI Clean up Curve ArrowStyle docs Move _SelectorWidget._props into SpanSelector._selection_artist Add a test for setting properties on LassoSelector Release mouse grabs when owning Axes is removed ci: Install pytz for Pandas nightly wheel Stop building 32-bit Linux wheels Ignore errors loading artifacts from CircleCI DOC: Clarify note in get_path_collection_extents Remove explicit symbol visibility pragmas Skip pgf pdflatex text if cm-super is not installed Fix return type of get_plot_commands Use _api.nargs_error in more places TST: Avoid broken nbconvert Ensure ImportError's have a message Post stubtest results to GitHub checks pgf: Add clipping to text outputs Fix 'can not' -> 'cannot' typo TST: Import MatplotlibDeprecationWarning consistently Remove print_figure overrides in backend subclasses Use `-framerate` to set ffmpeg input framerate Don't pass vframes to ffmpeg when using a tmpdir Ensure extra_args are last input to animation encoder Add note about frame rates too ffmpeg writers ci: Set apt to retry operations on failure TST: Handle missing black more resiliently DOC: Fix duplicated words ps: Explicitly set language level to 3 ps: Deprecate the psDefs module-level variable ps: Use rectclip instead of custom clipbox ps: Use _nums_to_str in more places Ignore papersize when outputting plain EPS Deprecate automatic papersize in PostScript DOC: Fix minor typo in API change notes ci: Increase retry count on PR conflict check Remove unused Variables from LayoutGrid Don't save parents in LayoutGrid Deprecate passing extra arguments to Figure.add_axes TST: Skip PySide6 6.5.1 for testing CI: Mark Tk tests on macOS Azure as xfail Drop metadata table when subsetting fonts Accept strings for {Cap,Join}Style in MarkerStyle Fix types for MarkerStyle ci: Merge sdist and wheel building workflows qt: Merge window closing event handlers qt: Avoid setting Qt5 attributes on Qt6 ci: Skip PyQt6 6.5.1 wheels ci: Move Python 3.11 job to Ubuntu 22.04 pdf: Use explicit palette when saving indexed images Correct bounding box calculation for text markers Fix pgf tests with TeXLive 2022 Fix new warnings in compiled extensions Stop building 32-bit Windows wheels Stop building universal2 wheels ps: Fix anchoring of rotated usetex text TST: Increase tolerance for older Ghostscript TST: xfail Tk test on Python 3.9 Azure macOS also DOC: Remove third party sample images DOC: Remove static alpha example images DOC: Remove static pgf example images DOC: Remove unused logos and badges Avoid Py_VerboseFlag deprecation from Python 3.12 ci: Fix typo for nightly builds ci: Add tzdata to nightly builds Re-export textpath types in text Avoid deprecated typing hints DOC: Restore banner indicating docs are unreleased DOC: Use consistent font for anatomy example qt: Mark canvas for re-draw after savefig Fix removal of Figure-level artists Fix triage tool due to Qt bump to 5.12 TST: Remove extra dummy Axis classes Fix default return of Collection.get_{cap,join}style Improve typing in pyplot (#26385) Add typing for internal helpers TYP: Add type hints to testing module Update type hints for font manager and extension Remove old What's new entries Fix pyparsing version check macos: Don't leak None in Timer cleanup Delete second MRI demo example Improve button widget examples a bit Stop ignoring typing on contourpy TYP: Mark more items as optional Avoid setting SubFigure.bbox_relative to None TYP: Move some things from Bbox to BboxBase TYP: Fix version info types Fix some triangulation types Fix types for Transform.transform_path* Add type hints for IPython _repr_* helpers Fix type hints for Legend.bbox_to_anchor Fix up image module type hints Fix types for ArtistList init Fix types for zoom/pan info Add missing layout engine type hints Fix type of writer argument to Animation.save Fix type hint for SubplotSpec init Fix type hint for hexbin(reduce_C_function=...) Remove explicit __init_subclass__ type hints Fix patch styling type hints Deprecate passing non-int to Table.auto_set_column_width Remove Fonts.get_used_characters TST: Fix monkey patch of find_tex_file TST: Remove dead code for LogFormatterSciNotation test DOC: Convert some blockquotes to code blocks DOC: Dedent blocks to fix accidental blockquotes Fix return value of Text.update TYP: Add several missing return type annotations Canonicalize Text.set_fontname Tighten return type of Axes.bar_label ps: Default to using figure size as paper TST: Correctly skip missing distillers Backport PR #26504: TYP: Add overload to specify output of Colormap.__call__ when possible Backport PR #26514: Clarify interaction between params of get_path_collection_extents. Backport PR #26572: [DOC]: clarify pre-commits and editing workflow Backport PR #26635: [MNT] Do not configure axes properties via subplots(..., subplot_kw={...}) Backport PR #26597: Squeeze post-convert 9E88 ed values when validating limits Backport PR #26649: [DOC] Remove "Discouraged" notices that have been superseded by deprecation Backport PR #26695: Bump actions/checkout from 3 to 4 Backport PR #26601: Avoid checking limits when updating both min and max for contours Backport PR #26709: DOC: consistency in docstrings of formatting of array-like Backport PR #26628: DOC: move install related FAQ to install docs Merge branch v3.7.x into v3.8.x Backport PR #26700: Check type for set_clip_box DOC: Pin mpl-sphinx-theme to 3.8.x Backport PR #26687: Remove usage of recarray Backport PR #26702: converted coc to rst and put links in code_of_conduct.md Eric Firing (2): Pcolormesh with Gouraud shading: masked arrays Use the mask from the stored array Eric Larson (1): DOC: Suggest replacement for tostring_rgb (#25502) Eric Prestat (2): Add deprecation for setting data with non sequence type in `Line2D` - see https://github.com/matplotlib/matplotlib/pull/22329 Add changelog note Eric Wieser (1): Make `.axis(zmin=...)` work on 3D axes Evgenii Radchenko (3): Adds tests for nargs_err in legend, stem, pcolorfast and cycler. Changed assertions to pytest.raises matches. Got rid of unnecessary 'raise...as' statements. Fabian Joswig (2): tests: failing test for local style import with ./ in name added. fix: import of local style with ./ in name fixed. Felix Goudreault (4): Fix issue #25164 Generalize test for multiple backends. Fixed similar bug in wx backend. Moved LA file mode for toolbar icon test in test_backends_interactive.py Gabriel Madeira (4): added alias to gray and grey match same colormaps added grey to gray aliases fixed gr[ea]y colormap alias updated with alias for reverse spelling Gautam Sagar (1): Backport PR #26608: Removed unnecessary origin keywords Gokberk Gunes (3): Connect stream lines if no varying width or color Regenerate test images for no varying width/color DOC: behavior change note streamplot no varying width/color Greg Lucas (29): FIX: Handle uint8 indices properly for colormap lookups MNT: Update code with Python 3.9+ syntax MNT: Add git blame ignore for pyupgrade 3.9+ MNT: Update lru_cache to cache where appropriate FIX: Only send one update signal when autoscaling norms MNT: Remove auto-flattening of input data to pcolormesh FIX: Correctly report command keypress on mac for Tk + Gtk CI: Pin reviewdog eslint to use node 18.13 CI: Don't run test workflows for doc changes MNT: Use WeakKeyDictionary and WeakSet in Grouper FIX: Remove some numpy functions overrides from pylab FIX: Use mappable data when autoscaling colorbar norm FIX: Decrease figure refcount on close of a macosx figure FIX: macosx, clear pending timers when the figure is destroyed FIX: macosx, always put timers on main thread FIX: Update the colormap object's name when registering TST: Add test for layoutgrid memory leak FIX: Handle masked arrays for RGBA input with scalar mappables MNT/FIX: macosx change Timer to NSTimer instance MNT: Ensure positive interval for timers CI: Skip gtk3cairo and wx interactive timer test FIX: macosx keep track of mouse up/down for cursor hand changes CI: Add pre-release installs to upcoming tests ENH: Add a PolyQuadMesh for 2d meshes as Polygons ENH: macosx allow figures can be opened in tabs or windows Update src/_macosx.m macosx: Cleaning up old sigint handling from objc Backport PR #26491: TYP: Add common-type overloads of subplot_mosaic Backport PR #26767: Trim Gouraud triangles that contain NaN Hai Zhu (1): Add public method set_loc() for Legend Haojun Song (1): Use classic style in old what's new entries (#25623) Hasan Rashid (1): [Doc]: Add alt-text to images in 3.6 release notes #24844 (#24878) II-Day-II (1): fix: revert simplification of stride calculation in LogLocator (#3) Ian Hunt-Isaak (1): link to ipympl docs instead of github Ian Thomas (2): Use CLOSEPOLY kind code to close tricontourf polygons Avoid using deprecated API Irtaza Khalid (1): Delete redundant examples from user gallery that are also present in the annotations tutorial (#25153) Jan-Hendrik Müller (1): Apply suggestions from code review Jarrod Millman (1): Upload nightlies to new location Jody Klymak (41): FIX: make colorbars for log normed contour plots have logscale DOC: animation faster DOC: change artists, add annotation DOC: update doc string for update DOC/BUILD add ability for conf to skip whole sections DOC: explain figures [skip actions] [skip appveyor] [skip azp] BLD: only doc CI build FIX DOC: cleanup constrained layout tutorial [skip actions] [skip azp] [skip appveyor] DOC: explain how ot make a fixed-size axes [ci doc] DOC: add more cross-ref and explanatory images for backends. GitHub: inactive label [skip ci] MNT: re-organize galleries under one subdir [ci doc] DOC/BLD: make log compatible with pst [ci doc] DOC: remove default logo [ci doc] DOC: update suptitle example [ci doc] DOC: user/explain reorg (and moving a lot of tutorials). (#25395) DOC/BLD: stop using sg head [ci doc] DOC: improve interpolation kwarg doc in imshow [ci doc] DOC: fix Sphinx Gallery discussion to explain mixed subddirs [ci doc] FIX: don't round image sizes to nearest pixel if FIX: check units for bar properly DOC/BLD: plot directive srcset DOC: improve User Guide front page DOC: fix DOC: fix Fix first plot FIX: new plot DOC: fix levels in user/explain/figure DOC: visible TOC to the sphinx gallery user/explain READMEs DOC: make user/explain/index cards DOC: make user/explain/index cards DOC: fix TOC users DOC: remove users_explain/axis DOC: add scales to Axes docs Doc: Add ticks document Doc: Add ticks document Doc: Add ticks document Fix links DOC: bit more context on scale WARN: fix warning for set_ticklabels Johann Krauter (22): Adding ellipse_arrow.py example and fix #25477 adapt the = lines to fix docu build test use plt.subplot() Now the patches.Ellipse is used for the plot and a marker ">" at the end point position of the ellipse minor axis rotated by the transform.Affine2D method. changed function docstring to numpy style fix flake8 build fail added get_vertices and get_co_vertices methods the Ellipse deleted blank lines sorry, some more whitespaces in blank line added entries in stubs, resolve docu issues resolve flake8 resolve return values overseen some whitespaces, sorry soved isort fail. How to solve the subs fail? added some more unittest, just in case... adapted unittest adapted stubs file resolve pre-commit codespell added get_vertices_co_vertices.rst to next_whats_new folder get_vertices and get_co_vertices returns now the coordinates of the major and minor axis depending on the length between the coordinates of points Changed get_vertices and get_co_vertices using get_patch_transform().transform() for coordinate calculations. fix in unittest due to different ordering of vertices return values Jonathan Wheeler (1): Added option for an offset for MultipleLocator Julian Chen (5): FIX: scaling factor for window with negative value Test function for scale factor of flattop window fix bug in `test_psd_window_flattop` update code formatting for `test_psd_window_flattop` code formatting: remove extra blank line Kyle Sunden (160): Remove support for python 3.8 Add development release note Add --only-binary to nightly pip install Update circle config, missed originally only binary requires argument Add back no-lto test Pin sphinx != 6.1.2 tests workflow does not use requirements/doc/doc-requirments.txt bump since_mpl_version Bump kiwisolver and pillow minvers Update dependencies docs Swap ipython directives for code-block directives drop 3.11 to 3.10 on appveyor Add ImportWarning filter for get_attr test (needed for gtk4) STY: Document line change bump to 88 char Add superseded note to MEP8 Terser statements (from review comments) STY: start docstring on second line Remove unused import of re introduced in #23442 Remove tests.py runner from repo root Revert "Fix deprecations of *Cursor widget event handlers" Revert: Deprecate access to Cursor/MultiCursor event handlers. Add simulated mouse events to cursor demos remove calls to set_visible(False) One last _onmove in tests that was not caught by revert Force extra draw to excercise clear machinery I think this should actually test it [ci doc] BLD: Unbreak github tests workflow Add ruff config to pyproject.toml for devs who are interested Clean up ruff config for rules both selected and ignored backport config changes to flake8 Use except Exception in place of bare except Fix displacement of colorbar for eps with bbox_inches='tight' Revert "Fix logic line break" Revert "Improve unit axis label test" Revert "Make have_units_and_converter private" Revert "Update units_rectangle baseline image" Revert "Fix unit info setting axis label" Revert "Add test for axis label when units set" TST: Add test which fails on main but passes on revert Remove straggler 3.7 release notes Update release guide instructions post v3.7.0 Reorder release branch creation and include merge up procedure Add UAT for notebook backends, remove contact numfocus Spelling and grammar fixes Update announcement docs Apply suggestions from code review Edit error messages for when metadata is passed to `savefig` (#25430) DOC: Fix the bars having numeric value of cm but labeled as inches Add ipykernel as an explicit doc dependency Use svg instead of png for font manager memory leak test Initially make mypy pass for tests Insert the majority of the pyi stub files __init__.pyi, add __all__ to __init__ Add mypy to reviewdog workflow Add __future__ imports to tests where inline type hints are included Update boilerplate to include annotations from pyi files pyplot autogenerated bits with annotations Use black for autogenerated portions of pyplot. remove textwrap usage Type handwritten portion of pyplot Update for api changes since mypy branch was started STY: run black over pyi stub files Make Color a union type of 3/4-tuple of floats and str Resolve some typing todos Update Axes.pyi pie stub to include hatch, regenerate pyplot with hatch annotation Redistribute types defined in _typing to their logical homes Get sphinx building without errors Update for expired 3.5 deprecations Boilerplate.py review comments Review and CI warnings DOC: Add development release note and note to add type hints into coding guide Add more explicit error message for [r,theta]grids Best practices for type hint stub files (flake8-pyi) Reorganize to typing.py, rename Color to ColorType Update for recent internal API changes Add script for identifying missing/broken type hints DOC: Update sphinx to include typing module (and remove aliases which moved) Mypy type ignore in pyplot Address approx 100 issues identified by mypy.stubtest Add mypy stubtest CI checks Include pyi stubs in wheels/sdists Ignore missing imports in mypy config Relax excludes on mypy config to not require source loc 'lib/' Fix missing stubs from ci that didn't flag locally Re disambiguate pyplot Axes references Add docs to tools/check_typehints.py Update for changes on main: Axes.ecdf, guiEvent read only, param deprecation Review comments from Qulogic Ensure tinypages ignored by mypy/stubtest Rename parameters for transform_[non_]affine Rename more parameters for consistency with superclass method parameter names TST: Unbreak pyside65 by installing libxcb-cursor0 Add deprecation note for parameter renames Include data kwarg in pyi stubs Rerender pyplot.py more precise api note Pin mypy to v1.1.1 for CI Clean up FileIO type hints TST: Bump exclude for newly released nbconvert Remaining mpl3.6 deprecations Update tests for deprecated behavior Add release notes for deprecation expiration s/deprecated/removed/ deprecated -> removed in api note remove filled from docstring TYP: Fix type hint (and docstring) for Bbox.intersection TYP: allow for xlim/ylim passed as single tuple Add (color, alpha) tuple as a valid ColorType TYP: Clean up CapStyle/FillStyle type hints py39 compatibility in typing.py Fix SelectorWidget.visible deprecation Remove 4-tuple from RGBColorType (only valid for RGBA) Update codespell ignores Only print actually tested QT APIs when erroring Explicitly test for missing qt bindings Fix release note reference to pyplot.axis Missing return types for Figure Remove unused imports from stub files [DOC/TYP]: Allow any array like for set_[xy]ticks, not just list of float [TST] Adjust tests to be more tolerant to floating point math operations being imprecise [TYP] Correct type hint for Transform.transform return [TYP] Reduce stubtest ignores Fix typo of missing quote in core font docs Add setuptools as an explicit build requirement [MNT] Update nightly wheels install location Limit Forward references in Mathtext parser Get correct renderer for axes_grid1 inset axes with bbox_inches=tight Update devdocs with more details about type hinting, especially deprecations Bring existing parameter keyword only deprecations in line with documentation Fix double backticks review comments/clarifications MNT: Unpin pyparsing, xfail error message tests for pyparsing 3.1.0 Adjust type hint of Norm.__call__ to return masked array Use overloads for Normalize.__call__ and inverse, ensure NoNorm returns type consistent with superclass Remove soon to be deprecated nan/inf aliases Adjust for upcoming numpy repr changes Update github stats for v 3.8.0rc1 REL: v3.8.0rc1 Bump off of release tag for v3.8.0rc1 Backport PR #26498: Add plausible analytics to the documentation pages Backport PR #26173: Synchronize mathtext docs and handling Backport PR #26526: Bump pypa/cibuildwheel from 2.14.1 to 2.15.0 Backport PR #26513: Tweak shape repr in _api.check_shape error message. Backport PR #26545: Fix size inferral when using cairocffi Backport PR #26554: Remove NumPy abs overrides from pylab Backport PR #26519: Fix mathtext mismatched braces Backport PR #26543: Add ninja to Cygwin builder Backport PR #26573: [DOC]: codespace link in contribute index Backport PR #26576: Use sys.platform over os.name Backport PR #26614: Properly disconnect machinery when removing child axes. Backport PR #26598: FIX: array labelcolor for Tick Backport PR #26582: MNT: Enable wheels for Python 3.12 Backport PR #26348: Test some untested Locator code Backport PR #26657: DOC: Fix some small issues Backport PR #26541: TYP: Add typing on mathtext internals Backport PR #26689: Fix error generation for missing pgf.texsystem. Backport PR #26705: [Doc] Small fixes found by velin Backport PR #26763: DOC: Add redirects for old gitwash files Prepare for release v3.8.0 REL: v3.8.0 Larry Bradley (1): DOC: fix typo LemonBoy (4): Filter out inf values in plot_surface Add test for surface plot with inf values Fix flake8 errors Restore np.array call Lukas Schrangl (4): Fix PolygonSelector.clear() Call update() only once in PolygonSelector.clear() Add test for PolygonSelector.clear() Apply code review suggestions Marisa Wong (1): BF - added fix for missing minor ticks Mateusz Sokół (2): ENH: Update numpy exceptions imports ENH: Make import selection implicit Matt Newville (1): wx backend should flush the clipboard before closing it Matthew Feickert (4): DOC: Use scientific-python-nightly-wheels for nightly build index CI: Use scientific-python/upload-nightly-action MNT: Defer to Scientific Python org for upload removal MNT: Use commit SHA of cibuildwheel action release Matthew Morrison (1): DOC: Update user_explain\text\README.txt to reference example page Matthias Bussonnier (3): DOC: Remove space after directive name, before double-colon.. MAINT: don't format logs in log call. Update lib/matplotlib/_mathtext.py Melissa Weber Mendonça (3): Apply suggestions from code review Update token name DOC: Add section on how to start contributing (#25214) Michael Dittrich (1): feat: add new SI prefixes to ticker Michael Higgins (1): changed to RST (#25594) Mubin Manasia (1): [Doc]: Fix navigation sidebar for Animation examples Mudassir Chapra (1): added a note to avoid f-strings in logging (#25081) NISHANT KUMAR (2): TST: Test for acorr function with integer array input BUG: Saving normalisation result in float (explicit upcasting) Niranjan (1): Modify rainbow_text() function to use annotate() function (#25993) Noy Hanan (1): Add ability to use float-tuple like kwarg legend(loc...) for rcParams['legend.loc'] #22338 Olin Johnson (1): Update lib/matplotlib/axes/_axes.py Oscar Gustafsson (125): Add tests for mpl_toolkit anchored artists Minor cleanup and add test for offsetbox Expire module deprecations Remove special casing for PyPy not required anymore Rename y -> r Expire deprecations in widgets and keyword only arguments for Selectors (#24254) Deprecate unused/undocumented functions Suppress pyparsing warning Make arguments other than renderer keyword-only for get_tightbbox Use _axis_map instead of getattr Unbreak Azure CI Minor refactoring of Axes3D Fix spelling of GitHub Add links to C++-compilers and TeX distributions Minor cleanup and optimization of Sketch Bump NumPy to 1.21 Update doc/api/next_api_changes/development/24919-KS.rst Increase timeout to GitHub API Support both Bbox and list for bbox to table/Table Replace checking Number with Real Refactor parts of Axis for readability Add mpl_round_to_int Re-enable CI buildwheel and cygwin labels Check file path for animation and raise if it does not exist Fix doc issues identified by velin Do not set clip path if it exists Correct patheffects doc Remove LGTM references and minor doc fixes Better axis labels for examples Unify pickradius arguments and checking Remove date_ticker_factory Remove checkdep_usetex Expire deprecations Remove stride_windows Make most arguments to Line2D keyword only Remove get_font_config Make most arguments to Text keyword only Remove get_rotation Make all arguments to Collection and most to subclasses keyword only Remove additional arguments to get_window_extent Remove delay and output_args properties from ImageMagickBase Make most arguments to Figure/figure keyword only Expire parameter renamings Make most arguments to Image classes keyword only Make most arguments to Legend keyword only Make most arguments to OffsetBox classes keyword only Make most arguments to Cell keyword only Remove get_texmanager Remove identify Remove move_from_center. tick_update_position, set_pane_pos, and w_*axis Remove AddList, Padded, SizeFromFunc, and GetExtentHelper Remove delta* and new_gridlines Remove dist and make most argument to set_zlim keyword only Make most argument to set_*lim keyword only Remove label Remove execute_constrained_layout Remove CleanupTestCase, cleanup, and check_freetype_version Remove use_line_collection argument to stem Remove get_renderer_cache Remove privatized or unused helper functions Make most arguments to Patch classes keyword only Fix documentation Add api change note Take review comments into account Fix casing of RGB(A) Link to numpy.uint8 Link to Affine2D(Base) Only document the __add__ and __sub__ special members Improve/correct documentation Add links for path types and general improvements Print incorrect tz argument in error message Deprecate empty offsets in get_path_collection_extents Clarify how to change side of the TickedStroke ticks mathtext now supports \text Optimize C code Fix issue with shared log axis Add configuration of Shadow and pie shadow Bump invalid hatch removal Fix what's new note for text Fixed eventplot issues Improve color documentation and typing Add tests for missing text wrap cases Add test for Path.contains_path Update, correct, and add badges/links Remove unused code Deprecate draw_rect and get_xys Remove unused functions in _path Rewrite offset_copy for better error message Add more relational operators to mathtext Add comment on issues marked 'good first issue' (#25735) Correct spelling in 'Good first issue' Simplify wording Deprecate TexManager.texcache Install extra requirements when testing with 3.11 Test GUI Correct Unicode for [lg]napprox Start basing mathtext tutorial on mathtext parser Enable branch coverage for C/C++ code Clarify how to get data from Line3D and fix formatting issue Restrict pyparsing version Update lib/matplotlib/texmanager.py Add _val_or_rc-function Do not clear Axis when registering spine [doc] Improve documentation types [Doc] Add note about (str, alpha) version added Add more sizeable delimiters Bump minimum QT5 version to 5.12 More micro optimizations Remove unused variables Some more micro optimizations Add tests for LogFormatter.format_data and format_data_short Remove unused private method [DOC] Update dependency documentation Only do pchanged and set stale when value changes [DOC] Documentation fixes Backport PR #26532: Fix input check in Poly3DCollection.__init__ Backport PR #26529: Fix MathText antialiasing Backport PR #26619: [DOC] Clarify some tick-related docstrings Backport PR #26540: TYP: Add overloads for FT2Font.get_sfnt_table Backport PR #26656: TYP: Fix some small bugs Backport PR #26566: MAINT: Numpy 2.0 deprecations for row_stack and in1d Backport PR #26542: TST: Ensure test_webagg subprocess is terminated Backport PR #26245: [pre-commit.ci] pre-commit autoupdate Backport PR #26676: [DOC] Slightly improve the LineCollection docstring Backport PR #26671: [DOC] Enhance API reference index Pavel Zwerschke (2): Switch to setup-micromamba Fix CI Peter Cock (1): Reverse stackplot legend to match data display Petros Tzathas (1): Change documented default value of nonpositive parameter Photoniker (10): Update ellipse_arrow.py Update ellipse_arrow.py Update ellipse_arrow.py Update ellipse_arrow.py Update ellipse_arrow.py Update ellipse_arrow.py Update ellipse_arrow.py Update patches.pyi Update galleries/examples/shapes_and_collections/ellipse_arrow.py Some correction :lipstick: ellipse_arrow.py Pierre Haessig (4): link style sheets reference to customization tutorial fix type and line length cut long line fix directive for matplotlib.style data Pieter Eendebak (10): Micro optimization of plotting (#26303) optimize imshow fix check workaround ensure error reporting is sorted add test for strip_math add test for strip_math revert strip_math tests remove import Increase coverage (#26346) Prajwal Agrawal (1): Backport PR #26462: Boxplot fix median line extending past box boundaries #19409 Priyanshi Gaur (1): Add locator API links to tick-locators example (#25177) RadostW (1): Whisker length, more precise description (#25135) Rahul Mohan (3): Update README.txt Update README.txt Update README.txt Ratnabali Dutta (17): Check lock owner before lock_release Check attribute error for lasso Check format_string comma is unchanged Add missing relational operator Add unicode mappings to binary operators Arrange layout for relational operators Add missing operators hex Add triangle symbol Remove duplicate symbol entries Add relation operators Add test for mathtext operators Add boldsymbol functionality in mathtext Add middle for delims Add substack command for mathtext Add substack command for mathtext Fix pyparsing version check Add next_whats_new entries for mathtext features (#26418) RishabhSpark (1): added layout="compressed" for pyplot #25223 (#25234) Rob Righter (3): Make default facecolor for subfigures be transparent ("none"). Fix for issue #24910 (#25255) Bugfix for loc legend validation Fix axes vlines and hlines using wrong coordinates Ruth Comer (54): Makefile html-noplot,clean: constrained layout tutorial image handling FIX: adjust_bbox should not modify layout engine update matplotlibrc urls DOC: tweak array indexing ENH: pad_inches='layout' for savefig DOC: use 'none' in set_layout_engine ENH: gapcolor for LineCollection DOC: remove constrained_layout kwarg from examples [ci doc] DOC: reorder CI control guidance [ci doc] command to start of bullet [ci doc] tweak skip ci instructions [ci doc] DOC: correct default value of pcolormesh shading DOC: remove constrained_layout kw [skip actions] [skip azp] [skip appveyor] unpin reviewdog add layout='none' option to Figure constructor [skip appveyor] [skip actions] [skip azp] fix typo [skip ci] FIX: use wrapped text in Text._get_layout [skip circle] "Inactive" workflow: bump operations-per-run [skip ci] CI: skip appveyor for doc only change [ci doc] “Inactive” workflow: increase operations to 75 [skip ci] TST: unbreak appveyor bump operations to 100 [skip ci] Skip Appveyor for doc only change (second attempt) [skip ci] DOC: remove rcdefaults from barh example FIX: use locators in adjust_bbox bump operations to 125 [skip ci] gitignore doc/users/explain [skip ci] DOC: combine marker examples [ci doc] bump operations to 150 [skip ci] FIX: _safe_first_finite on all non-finite array MNT: deprecate unused numdecs LogLocator param MNT: simplify deprecation of numdecs attribute numdecs deprecation: tidy up CI: skip Azure Pipelines for doc-only change DOC: changenote for max/min minor ticks fix unbreak doc build with Sphinx 6.2 fix typo in ruff config [skip ci] DOC: add remote upstream DOC: don't advocate deleting main branch add close label for inactive issues [skip ci] 'Inactive' workflow: reduce run frequency [skip ci] PR welcome: getting attention [skip ci] Don't show type hints in rendered docs Skip tests for users-explain gallery [skip ci] FIX: wspace and hspace in subfigures without layout engine FIX: AnnotationBbox extents before draw TST: simplify mask in pcolor writing to mask test ENH: clip_path keyword for contour and contourf FIX: labels at start of contours ENH: Collection.set_paths DOC: contourf antialiased default Reinstate & deprecate ContourSet.antialiased Fixes for pycodestyle v2.11 DOC: update ContourSet attributes deprecation advice Sam (1): Enable automatic browser-level lazy-loading of images in HTML documentation Scott Shambaugh (12): Fix 3d aspect ratio error cases Draw 3D gridlines below more important elements Fix broken symlinks for expected images on WSL 3D plots shared view angles Fix displayed 3d coordinates showing gibberish (#23485) Break axis3d drawing into subfunctions Implement 3d axis positions Separate out 3D axis label and ticks positions Whats new for 3d axis positions Call out which pane is hovered for 3d hover coordinates Cleanup Tests, fix, and whats new from code review Shreeya Ramesh (1): FIX: make inset axes transparent on figures Sia Ghelichkhan (1): returning _facecolor2d and _edgecolor2d as arrays Smeet nagda (1): migrate from utcfromtimestamp to fromtimestamp (#25918) SnorfYang (3): Doc: Replace matplotlibrc.template remove some github paths revise Stefanie Molin (4): BUG: Return null Bbox when there is no intersection for bar_label center. TST: Add test case for bug fix. TST: Switch to fig.draw_without_rendering() in test. Fix codecov.yml so it is valid. Steffen Rehberg (11): DOC: Enable Opensearch MNT: Fix double % signs in matplotlibrc DOC: Fix docstring formatting DOC: Fix thumbnail title for sphinx gallery Remove links in title altogether Fix get_constrained_layout_pads() DOC: Improve readability of date formatters/locators example DOC: Clarify terminology DOC: fix rst formatting DOC: Modernize Colorbar Tick Labelling example DOC: Fix image_rotator Thomas A Caswell (72): TST: xfail the windows font test DOC: add behavior change note for only considering fonts in registry DOC: clarify that Matplotlib uses standard library logging module DOC: fix english and cross ref MNT: remove check that exists only for removed deprecation TST: remove tests of (now expired) deprecation warnings MNT: remove orphaned module attribute DOC: tweak wording on ArtistList class docstring DOC: add notes for removals DOC: change all sphinx-gallery section separators to # %% DOC: document sg separator preference DOC: add a sub-heading STY: make allowed line length 9 longer to 88 from 79 FIX: fully invalidate TransformWrapper parents before swapping FIX: only try to update blit caches if the canvas we expect FIX: handle the change detection differently for multicursor FIX: do not use deprecated API internally MNT: put changed canvas logic in private method with docstring DOC: restore SHA to footer BLD: pin mpl-sphinx-theme to support sha in footer DOC: add cache-busting query to switcher json url DOC: add include source to a 3.7 whats new FIX: do not cache exceptions MNT: delete references to frame objects MNT: still use Agg for test but avoid pillow MNT: use less eval DOC: add a note about linewidth to scatter docs DOC: improve wording DOC: fix spelling FIX: correctly unset the layout engine in Figure.tight_layout MNT: fix typo in test name DOC: clarify the milestoning and backport policy wording DOC: tweak wording in warning DOC: clarify how colorbar steals space MNT: update Shadow init signature DOC: edits from review DOC: re-order docstring DOC: restore navigation documentation MNT: minor change to test DOC: add steering council email to triage page DOC: reference to page non-members can not see DOC: remove note about pinging team DOC: fix bad copy-edit Revert "Merge pull request #24555 from parthpankajtiwary/symlog-warn" API: forbid unsafe settings and keywords in AbstractMovieWriter.grab_frame MNT: move logic from Animation.save to AbstractMovieWriter.saving DOC: correct outdated comment in matplotlibrc MNT: remove test images from mathtext tests that have been removed MNT: add VNClte porte by default MNT: py312 deprecates pickling objects in itertools FIX: also account for itertools.count used in _AxesStack CI: skip tk tests on GHA as well FIX: also copy the axis units when creating twins MNT: remove execute bit on rst file DOC: remove outdated page on git DOC: ensure that the bounding box is scaled with dpi in example DOC: add version added note to new clear kwarg STY: remove whitespace FIX: do not warn when calling tight_layout multiple times FIX: move the font lock higher up the call and class tree TST: add coverage for case when the figure is not visible LIC: Update the license we bundle the colorbrewer colormap data with DOC: add note about manually downloading qhull + freetype CI: all supported versions of Python are supported by numpy 1.25 BLD: stop skipping musl wheel builds DOC: add note that we now build musl wheels BLD: do not build musl + arm DOC: go back to baseclass Backport PR #26487: DOC: Remove unused image rotator Backport PR #26502: TST: Increase some tolerances for non-x86 arches Backport PR #26721: Add a Python 3.12 classifier Backport PR #26719: Fix issue with missing attribute in Path3DCollection Thomas J. Fan (1): Use pybind11 in ttconv module Tigran Khachatryan (1): Update FancyBboxPatch dosctring Tim Hoffmann (38): Modify "Annotating an Artist" of Annotations tutorial Change coordinates in Annotations tutorial Replace transAxes example in Annotations tutorial Add Figure methods get_suptitle(), get_subxlabel(), get_supylabel() Correctly hide download buttons using CSS Improved exception messages Replace random values by hard-coded numbers in plot-types ... Discourage fontdict Update watermark example Add note that subfigure is still provisional to docstring Cleanup date tick locators and formatters Rewrite Tick formatters example Improve exception message for set_ticks() kwargs without labels Simplify MRI with EEG example Move pylab documentation to its own module page Restructure interface section of API Reference index page DOC: Clarify the difference between document and section references DOC: Add a warning that ticks are not persistent Rename an internal parameter of _label_outer_x/yaxis() Support removing inner ticks in label_outer() Clarify behavior of norm clipping DOC: Update dropped splines example Backport PR #26509: Update/tweak SpanSelector docs. Backport PR #26578: MAINT: add __pycache__/ to .gitignore Backport PR #26581: Deduplicate test for toolbar button icon LA mode. Backport PR #26591: Fix ToolBase.figure property setter. Backport PR #24711: Test with Python 3.12 Backport PR #26622: [Doc] Improve DSP-related examples Backport PR #26633: [Doc] Shorten documentation links in widgets Backport PR #24209: List the webagg_core module in the sphinx docs. Backport PR #26636: [Doc] Improve set_layout_engine docs Backport PR #26641: [Doc] Add ACCEPTS for some Axes set methods Backport PR #26521: Replaced list with tuple in pyplot for axes Backport PR #26646: Use standard method for closing QApp when last window is closed. Backport PR #26470: [DOC]: mathtext tutorial-consolidate explain and notes Backport PR #26193: Sort tex2uni data in mathtext Backport PR #26665: Clarify loading of backend FigureCanvas and show(). Backport PR #26762: MNT: Numpy 2.0 removals from ndarray class Tom (1): write addfont example (#24866) Tom Sarantis (2): Added get_shape as an alias for get_size + tests (#25425) Remove nonfunctional Axes3D.set_frame_on and get_frame_on methods. (#25648) Tunç Başar Köse (1): Add shadow coloring for legends and associated tests Utkarsh Verma (1): Replace usage of WenQuanYi Zen Hei by Noto Sans CJK (#25726) Vishal Pankaj Chandratreya (1): Em dashes instead of consecutive hyphens. (#25211) Vladimir Ilievski (1): Allow setting default AutoMinorLocator (#18715) Waleed-Abdullah (1): decreased timeout for local interactive tests Y.D.X (1): Remove a redundant comma Yi Wei (10): FIX: Axis offset mispositioning in plot_surface FIX: pcolormesh writing to read-only input mask FIX: pcolormesh writing to read-only input mask add tests fix formatting check if the mask is unwritable add test_pcolorargs_with_read_only add assertions copy mask locally FIX: pcolor writing to read-only input mask daniilS (3): Use selected format in Tk savefig when filename doesn't contain one Make tk backend use native crosshair cursor Fix Legend.set_draggable() with update="bbox" dependabot[bot] (11): Bump cygwin/cygwin-install-action from 2 to 3 Bump pypa/cibuildwheel from 2.11.4 to 2.12.0 Bump mamba-org/provision-with-micromamba from 14 to 15 Bump pypa/cibuildwheel from 2.12.0 to 2.12.1 Bump actions/stale from 7 to 8 Bump cygwin/cygwin-install-action from 3 to 4 Bump pypa/cibuildwheel from 2.12.1 to 2.12.3 Bump pypa/cibuildwheel from 2.12.3 to 2.13.0 Bump pypa/cibuildwheel from 2.13.0 to 2.13.1 Bump pypa/cibuildwheel from 2.13.1 to 2.14.0 Bump pypa/cibuildwheel from 2.14.0 to 2.14.1 devRD (10): Add release event for lasso_demo Fix unmatched offsetText label color Add conditional before set labelcolor call Update test to check offset text color Fix unintended space after comma as a decimal separator Handle locale unsupported error Add error handling for locale Update pytest to skip when locale unsupported Update locale setting for coverage Add bfit bolditalic tex command hannah (32): added hatch kwarg arg + tests + what's new (w/ alt) added way to order things last seperate out folder orderings expanded basic pie example adds section on annotating an artist using axes.annotate added assigning and duplicating section heading to contribute guide grammar/wording tweak follow up to #25652 Condensed checklist by linking out to the related section of the Users guide->User guide (#25807) more explict about what remote means in context emphasize local dropdown + moving link changed incubator link to community channel good first issue bot rewording based on discussion in #25942 removed wrapping subsubsection titles for static and interactive tables contributing->contribute + moving things around added note about python 3 to venv alphabetize greek and hebrew, closes #26140 reorganize contribute page into blocks and cards check for pr from main: precommit check + action in pr_clean moved minimum dependencies to maintainance guide old landing page sections + install/contribute/project/release from users more consistent data structure oriented headers and explanations for blended artist + fixing header + redirects/deletes filter warnings triggered by #26472 when building docs add B2B5 ed Noto Sans TC for windows docs builds Backport PR #26490: Import PIL.Image explicitly over PIL Backport PR #26201: DOC: Add documentation on codespaces usage Backport PR #26493: Disable ``add_html_cache_busting`` on Sphinx 7.1+ Backport PR #26565: [doc]: added section Verify installation Backport PR #26680: Fix flaky CI tests haval0 (3): feat: add 2 tests based on good/bad plot from upstream issue fix: make "bad plot" test fail because fix isn't implemented yet fix: make tests slightly error tolerant (#4) j1642 (1): ENH: Add new color spec, tuple (matplotlib_color, alpha) jsdodge (1): Backport PR #26606: [Doc] Revise histogram features example (Closes #26604) kolibril13 (5): cap heading Upper lower apply suggestions sorting one down krooijers (2): Fixes #12926 - inconsistency upon passing C in hexbin Added test for hexbin mincnt consistency upon C param lganic (1): Fixed bug: mathtext rendered width not being calculated correctly (#25692) luke (3): add ref fix error add-for-every-under-examples/ marbled-toast (2): update the doc string for fancyarrowpatch to link to annotate (#26317) remove quote box from font_manager mariamalykh (1): replaced step with stairs in basic plot types matt statham (1): inset locator fix with tests added melissawm (9): Add links and expand mathmpl docstring Addressing reviewers' comments Change section heading Typos and phrasing Updated links to documents MAINT: Add api-token for CircleCI redirector action Remove codecov and coverage from CircleCI setup Add codespaces configuration Fix codespaces setup.sh script photoniker (1): Update patches.py by .. versionadded:: 3.8 pre-commit-ci[bot] (1): [pre-commit.ci] pre-commit autoupdate richardsheridan (4): fix FigureCanvasTkAgg memory leak via weakrefs Disconnect SubplotTool destroyer callback on tool_fig close FIX: avoid silently invalid tk.Canvas.delete FIX: resize tk.PhotoImage instead of recreate root (1): Raise on scatter plural and singular aliases saranti (9): Tick label font family via tick_params fix typo Fix figure annotation example test annotate(textcoords=offset fontsize) add ishikawa diagram to examples remove redundant line input data as dict, remove color var add setters and getters for AxLine minor fixes stevezhang (1): Support customizing antialiasing for text and annotation stevezhang1999 (4): streamlined image comparison tests for text antialiasing fix doc formatting, parameter name and spells update text.pyi Text antialiasing for mathtext (#26376) vavanade (1): Fix typo in api_interfaces.rst vivekvedant (4): fix for pcolormesh doesn't allow shading = 'flat' in the option fix for flake8 update error message for shading=flat changes for fixing the failing test vizzy_viz (1): #25900 update figure.py weijili (1): Use axes=self as an extra args in parasite_axes whyvra (1): Updated WebAgg JS to check and send request over wss if using HTTPS xtanion (4): removing typecasting method to float adding tests and changing typecasts flake8 fix removing redundant `to_list` conversion yuzie007 (1): Modify `hexbin` to respect `:rc:patch.linewidth` 渡邉 美希 (1): DOC:added exported colors to colors.api
PR Summary
When creating a Line2D, x/y data is required to be a sequence. This is not enforced when modifying the data, or with Line3D.
Closes #22308
PR Checklist
Tests and Styling
pytest
passes).flake8-docstrings
and runflake8 --docstring-convention=all
).Documentation
doc/users/next_whats_new/
(follow instructions in README.rst there).doc/api/next_api_changes/
(follow instructions in README.rst there).