@@ -395,66 +395,74 @@ designed to make your life easier.
395395The following features are relevant for "1D" plotting commands like
396396`~matplotlib.axes.Axes.plot ` and `~matplotlib.axes.Axes.scatter `:
397397
398- * The `cycle ` :ref: `keyword argument <ug_apply_cycle >` changes the property cycle
399- on-the-fly. It is interpreted by the `~proplot.constructor.Cycle `
400- :ref: `constructor function <why_constructor >`, allowing for flexible specification.
401- * The `colorbar ` and `legend ` keywords draw
402- :ref: `colorbars and legends on-the-fly <ug_cbars_axes >`. Note that colorbars can
403- now be easily drawn from :ref: `lists of artists <ug_cbars >`.
398+ * The `cycle ` keyword is interpreted by the `~proplot.constructor.Cycle `
399+ :ref: `constructor function <why_constructor >` and applies
400+ :ref: `property cyclers <ug_apply_cycle >` on-the-fly. This permits succinct
401+ and flexible property cycler application.
402+ * The `legend ` and `colorbar ` keywords draw :ref: `on-the-fly legends and colorbars
403+ <ug_cbars_axes>` using the result of the plotting command. Note that colorbars can
404+ now be drawn from :ref: `lists of artists <ug_cbars >` (e.g., from a list of lines).
404405* The `~matplotlib.axes.Axes.bar ` and `~matplotlib.axes.Axes.barh ` commands accept
405- 2D arrays and can :ref: `stack or group <ug_bar >` successive columns.
406- The `~matplotlib.axes.Axes.fill_between ` and `~matplotlib.axes.Axes.fill_betweenx `
407- commands (also accessible via the shorthands `~proplot.axes.Axes.area ` and
408- `~proplot.axes.Axes.areax `) also accept 2D arrays and can
406+ 2D arrays and can :ref: `stack or group <ug_bar >` successive columns. Likewise,
407+ the `~matplotlib.axes.Axes.fill_between ` and `~matplotlib.axes.Axes.fill_betweenx `
408+ commands (accessible via the new shorthands `~proplot.axes.Axes.area ` and
409+ `~proplot.axes.Axes.areax `) accept 2D arrays and can
409410 :ref: `stack or overlay <ug_bar >` successive columns.
410411* The `~matplotlib.axes.Axes.bar `, `~matplotlib.axes.Axes.barh `,
411412 `~matplotlib.axes.Axes.vlines `, `~matplotlib.axes.Axes.hlines `,
412- `~proplot .axes.Axes.fill_between `, and `~proplot .axes.Axes.fill_betweenx `
413+ `~matplotlib .axes.Axes.fill_between `, and `~matplotlib .axes.Axes.fill_betweenx `
413414 commands accept a `negpos ` keyword argument that assigns different
414415 colors to "negative" and "positive" regions.
415- * The `~matplotlib.axes.Axes.plot `, `~matplotlib.axes.Axes.scatter `, and
416- `~matplotlib.axes.Axes.bar ` commands can draw :ref: `on-the-fly error bars and
417- "shading" <ug_errorbars>` using a variety of keyword arguments. This is often
416+ * The `~matplotlib.axes.Axes.plot `, `~proplot.axes.Axes.plotx `,
417+ `~matplotlib.axes.Axes.scatter `, `~proplot.axes.Axes.scatterx `,
418+ `~matplotlib.axes.Axes.bar `, and `~matplotlib.axes.Axes.barh ` commands can draw
419+ :ref: `on-the-fly error bars and "shading" <ug_errorbars >` using a variety of keyword
420+ arguments. This is often
418421 more convenient than working with the `~matplotlib.axes.Axes.errorbar ` command.
419422* The new `~proplot.axes.Axes.plotx ` and `~proplot.axes.Axes.scatterx ` commands
420423 are just like `~proplot.axes.Axes.plot ` and `~proplot.axes.Axes.scatter `, but
421424 single positional arguments are interpreted as *y * coordinates and multiple
422425 positional arguments are interpreted as (*y *, *x *) pairs.
423- * The new `~proplot.axes.Axes.parametric ` method can draw clean-looking
424- :ref: `parametric lines <ug_parametric >` with the parametric coordinate
425- denoted by colormap colors rather than text annotations.
426+ * The new `~proplot.axes.Axes.parametric ` command draws clean-looking
427+ :ref: `parametric lines <ug_parametric >` by encoding the parametric coordinate
428+ with colormap colors rather than using text annotations.
426429
427430The following features are relevant for "2D" plotting commands like
428431`~matplotlib.axes.Axes.pcolor ` and `~matplotlib.axes.Axes.contour `:
429432
430433* The `cmap ` and `norm ` :ref: `keyword arguments <ug_apply_cmap >` are interpreted
431434 by the `~proplot.constructor.Colormap ` and `~proplot.constructor.Norm `
432- :ref: `constructor functions <why_constructor >`, allowing for flexible specification.
433- * The `colorbar ` keyword draw :ref: `on-the-fly colorbars <ug_cbars_axes >`.
434- Note that "inset" colorbar locations can also be used, analogous to
435- "inset" legends.
435+ :ref: `constructor functions <why_constructor >`. This permits succinct
436+ and flexible colormap and normalizer application.
437+ * The `colorbar ` keyword draws on-the-fly :ref: `colorbars <ug_cbars_axes >`
438+ using the result of the plotting command. Note that "inset" colorbars can also
439+ be drawn, analogous to "inset" legends.
436440* The `~matplotlib.axes.Axes.contour `, `~matplotlib.axes.Axes.contourf `,
437441 `~matplotlib.axes.Axes.pcolormesh `, and `~matplotlib.axes.Axes.pcolor ` commands
438442 all accept a `labels ` keyword. This draws :ref: `contour and grid box labels
439443 <ug_labels>` on-the-fly. Labels are automatically colored black or white
440444 according to the luminance of the underlying filled contour or grid box color.
445+ * The default `vmin ` and `vmax ` used to normalize colormaps now exclude data outside
446+ the *x * axis bounds `xlim ` and *y * axis bounds `ylim ` if they were explicitly set.
447+ This can be disabled by setting :rcraw: `image.inbounds ` to ``False `` or passing
448+ ``inbounds=False `` to plots.
441449* The `~proplot.colors.DiscreteNorm ` normalizer is paired with most colormaps by
442450 default and can easily divide colormaps into distinct levels, similar to
443451 `~matplotlib.axes.Axes.contourf `. This can be disabled by setting
444452 :rcraw: `image.discrete ` to ``False `` or passing ``discrete=False `` to plots.
445- * The `~proplot.colors.DivergingNorm ` normalizer is perfect for data with a
453+ * The new `~proplot.colors.DivergingNorm ` normalizer is perfect for data with a
446454 :ref: `natural midpoint <ug_norm >` and offers both "fair" and "unfair" scaling.
447- The `~proplot.colors.LinearSegmentedNorm ` normalizer can generate
448- uneven color gradations useful for :ref: `unusually distributed <ug_norm >` data .
455+ The new `~proplot.colors.LinearSegmentedNorm ` normalizer can generate
456+ uneven color gradations useful for :ref: `unusual data distributions <ug_norm >`.
449457* The new `~proplot.axes.Axes.heatmap ` command invokes
450- `~matplotlib.axes.Axes.pcolormesh ` then by default applies an :ref: `equal axes apect ratio
458+ `~matplotlib.axes.Axes.pcolormesh ` then applies an :ref: `equal axes apect ratio
451459 <https://matplotlib.org/stable/gallery/subplots_axes_and_figures/axis_equal_demo.html>`,
452460 adds ticks to the center of each gridbox, and disables minor ticks and gridlines.
453461 This can be convenient for things like covariance matrices.
454- * ProPlot transforms coordinate edges into "centers " when passed to commands
455- like `~matplotlib.axes.Axes.contour `, and transforms coordinate centers to "edges"
456- when passed to commands like `~matplotlib.axes.Axes.pcolor `. In matplotlib, `contour `
457- requires centers, and ` pcolor ` truncates the data when it receives centers.
462+ * ProPlot transforms coordinate centers to "edges " when passed to commands like
463+ `~matplotlib.axes.Axes.pcolor `, and transforms coordinate edges to "centers" when
464+ passed to commands like `~matplotlib.axes.Axes.contour `. In matplotlib, `pcolor `
465+ truncates the data when it receives centers.
458466* ProPlot fixes an irritating issue where saved vector graphics appear to have
459467 thin white lines between `filled contours
460468 <https://stackoverflow.com/q/8263769/4970632> `__, `pcolor patches
@@ -552,10 +560,10 @@ ProPlot reproduces many of the `xarray.DataArray.plot`,
552560`pandas.DataFrame.plot `, and `pandas.Series.plot ` features on the
553561`~proplot.axes.Axes ` plotting methods themselves. Passing a
554562`~xarray.DataArray `, `~pandas.DataFrame `, or `~pandas.Series ` through any
555- plotting method automatically updates the axis tick labels, axis labels,
556- subplot titles, and colorbar and legend labels from the metadata. This
557- feature can be disabled by setting :rcraw: `autoformat ` to ``False `` or
558- passing `` autoformat=False `` to any plotting command.
563+ plotting command updates the axis tick labels, axis labels, subplot title, and
564+ colorbar and legend labels from the metadata. This feature can be disabled
565+ by setting :rcraw: `autoformat ` to ``False `` or passing `` autoformat=False ``
566+ to any plotting command.
559567
560568As :ref: `described above <why_plotting >`, ProPlot also implements features
561569that were originally only available from the `xarray.DataArray.plot `,
@@ -745,7 +753,7 @@ the :ref:`user guide <ug_proplotrc>` for details.
745753
746754ProPlot also automatically loads colormaps, color cycles, colors, and font files
747755saved in the ``~/.proplot/cmaps ``, ``~/.proplot/cycles ``, ``~/.proplot/colors ``,
748- and ``~/.proplot/fonts ``, folders in your home directory. You can save colormaps and
756+ and ``~/.proplot/fonts `` folders in your home directory. You can save colormaps and
749757color cycles to these folders simply by passing ``save=True `` to
750758`~proplot.constructor.Colormap ` and `~proplot.constructor.Cycle `. To *manually *
751759load from these folders, e.g. if you have added files to these folders but you do
0 commit comments