Changelog history¶
ProPlot v1.0.0 (2020-##-##)¶
This will be published when some major refactoring tasks are completed. See GH#45, GH#46, and GH#50.
ProPlot v0.5.0 (2020-##-##)¶
Features
Users can now use
figurewithadd_subplotorsubplots(GH#50). This is a major improvement!GridSpecnow accepts physical units, rather than havingsubplotshandle the units (GH#50).Allow “hanging” twin x and y axes as members of the
EdgeStackcontainer. Arbitrarily many siblings are now permitted.Use
GeometrySolverfor calculating various automatic layout stuff instead of having 1000 hiddenFiguremethods (GH#50).Use
EdgeStackclass for handling stacks of colorbars, legends, and text (GH#50).
Internals
Handle all projection keyword arguments in
add_subplotinstead ofsubplots(GH#50).Panels, colorbars, and legends are now members of
EdgeStackstacks rather than getting inserted directly into the mainGridSpec(GH#50).
ProPlot v0.4.1 (2020-01-08)¶
Deprecation
Change the default
.proplotrcformat from YAML to the.matplotlibrcsyntax (GH#101).
Features
Comments (lines starting with
#) are now permitted in all RGB and HEX style colormap and cycle files (GH#100).Break down
show_cyclesbars into categories, just likeshow_cmaps(GH#100).
Bug fixes
Fix issue where
show_cmapsandshow_cyclesdraw empty axes (GH#100).Add back the default .proplorc file to docs (GH#101). To do this,
conf.pyauto-generates a file in_static.
Internals
Add
geogrid.color/linewidth/etcandgridminor.color/linewidth/etcprops as children ofgrid.color/linewidth/etc(GH#101).Various
rc_configuratorimprovements, remove outdated global variables (GH#101).Better error handling when loading colormap/cycle files, and calls to
ColormapandCyclenow raise errors while calls toregister_cmapsandregister_cyclesstill issue warnings (GH#100).
ProPlot v0.4.0 (2020-01-07)¶
Deprecated
Rename
basemap_defaultstobasemap_kwargsandcartopy_projstocartopy_names(@431a06ce).Remove
subplots.innerspace,subplots.titlespace,subplots.xlabspace, andsubplots.ylabspacespacing arguments, automatically calculate default non-tight spacing using_get_spacebased on current tick lengths, label sizes, etc.Remove redundant
use_fonts, usercParams['sans-serif']precedence instead (GH#95).dualxanddualyno longer accept “scale-spec” arguments. Must be a function, two functions, or an axis scale instance (GH#96).Remove
Axesshare[x|y],span[x|y], andalign[x|y]kwargs (GH#99). These settings are now always figure-wide.Rename
CyclesamplestoN, renameshow_colorsnbreaktonhues(GH#98).
Features
Add
from_filestatic methods (GH#98). You can now load files by passing a name toColormap.Add TeX Gyre Heros as open source Helvetica-alternative; this is the new default font. Add Fira Math as DejaVu Sans-alternative; has complete set of math characters (GH#95).
Add
xlinewidth,ylinewidth,xgridcolor,ygridcolorkeyword args toformat(GH#95).Add getters and setters for various
Figuresettings likeshare[x|y],span[x|y], andalign[x|y](GH#99).Add
Figurefallback_to_cmkwarg. This is used byshow_fontsto show dummy glyphs to clearly illustrate when fonts are missing characters, but preserve graceful fallback for end user.Improve
Projconstructor function. It now acceptsProjectionandBasemapinstances, just like other constructor functions, and returns only the projection instance (GH#92).rc__getitem__always returns the setting. To get context block-restricted settings, you must explicitly passcontext=Truetoget,fill, orcategory(GH#91).
Bug fixes
Fix issues with
dualxanddualywith non-linear parent scales (GH#96).Ignore TTC fonts because they cannot be saved in EPS/PDF figures (GH#94 and GH#95).
Do not try to use Helvetica Neue because “thin” font style is read as regular (GH#94 and GH#95).
Documentation
Use the imperative mood for docstring summaries (GH#92).
Fix
show_cyclesbug (GH#90) and show cycles using colorbars rather than lines (GH#98).
Internals
Define
rcdefault values with inline dictionaries rather than with a default.proplotrcfile, change the auto-generated user.proplotrc(GH#91).Remove useless
panel_kwkeyword arg fromlegend_wrapperandcolorbar_wrapper(GH#91). Removewflush,hflush, andflushkeyword args fromsubplotsthat should have been removed long ago.
ProPlot v0.3.1 (2019-12-16)¶
Bug fixes
ProPlot v0.3.0 (2019-12-15)¶
Deprecated
Remove
'Moisture'colormap (@cf8952b1).
Features
Add
use_font, only sync Google Fonts fonts (GH#87).New
'DryWet'colormap is colorblind friendly (@0280e266).Permit shifting arbitrary colormaps by
180degrees by appending the name with'_shifted', just like'_r'(@e2e2b2c7).
Bug fixes
Add brute force workaround for saving colormaps with callable segmentdata (@8201a806).
Fix issue with latest versions of matplotlib where
%matplotlib inlinefails silently so the backend is not instantiated (@cc39dc56).Save the
cyclicandgammaattributes in JSON files too (@8201a806).
Documentation
Cleanup notebooks, especially the colormaps demo (e.g. @952d4cb3).
Internals
Change
clocktoperf_counter(GH#86).
ProPlot v0.2.7 (2019-12-09)¶
Bug fixes
Fix issue where
AutoFormatterlogarithmic scale points are incorrect (@9b164733).
Documentation
Improve Configuring proplot documentation (@9d50719b).
Internals
ProPlot v0.2.5 (2019-12-07)¶
Features
Much better
CutoffScalealgorithm, permit arbitrary cutoffs (GH#83).
ProPlot v0.2.4 (2019-12-07)¶
Deprecated
Remove
fonts_systemandfonts_proplot, renamecolordicttocolors, make top-level variables more robust (@861583f8).
Documentation
Params table for
show_fonts(@861583f8).
Internals
Improvements to
register_colors.
ProPlot v0.2.3 (2019-12-05)¶
Bug fixes
Fix issue with overlapping gridlines (@8960ebdc).
Fix issue where auto colorbar labels are not applied when
globe=True(@ecb3c899).More sensible zorder for gridlines (@90d94e55).
Fix issue where customized super title settings are overridden when new axes are created (@35cb21f2).
Documentation
Organize ipython notebook documentation (@35cb21f2).
Internals
Major cleanup of the
colorbar_wrappersource code, handle minor ticks using the builtin matplotlib API just like major ticks (@b9976220).
ProPlot v0.2.2 (2019-12-04)¶
Deprecated
Rename
axes_gridtosubplot_grid(@ac14e9dd).
Bug fixes
Fix shared x and y axis bugs (@ac14e9dd).
Documentation
Make notebook examples PEP8 compliant (@97f5ffd4). Much more readable now.
ProPlot v0.2.1 (2019-12-02)¶
Deprecated
Rename
autoreload_setup,autosave_setup, andmatplotlib_setuptoipython_autoreload,ipython_autosave, andipython_matplotlib, respectively (@84e80c1e).
ProPlot v0.2.0 (2019-12-02)¶
Deprecated
Remove the
nbsetuprc setting in favor of separateautosave,autoreload, andmatplotlibsettings for triggering the respective%magic commands. (@3a622887;nbsetupis still accepted but no longer documented).Rename the
formatrc setting in favor of theinlinefmtsetting (@3a622887;formatis still accepted but no longer documented).Rename
FlexibleGridSpecandFlexibleSubplotSpectoGridSpecandSubplotSpec(@3a622887; until GH#50 is merged it is impossible to use these manually, so this won’t bother anyone).
Features
Support manual resizing for all backends, including
osxandqt(@3a622887).
Bug fixes
Disable automatic resizing for the
nbAgginteractive inline backend. Found no suitable workaround (@3a622887).
Internals
Organize the
rcdocumentation and the default.proplotrcfile (@3a622887).Rename
rcParamsCustomtorcParamsLong(@3a622887; this is inaccessible to the user).When calling
fig.canvas.print_figure()on a stale figure, callfig.canvas.draw()first. May be overkill forsavefigbut critical for correctly displaying already-drawn notebook figures.
ProPlot v0.1.0 (2019-12-01)¶
Internals
Include
flake8in Travis CI testing (@8743b857).Enforce source code PEP8 compliance (@78da51a7).
Use pre-commit for all future commits (@e14f6809).
Implement tight layout stuff with canvas monkey patches (@67221d10). ProPlot now works for arbitrary backends, not just inline and qt.
Documentation
Various RTD bugfixes (e.g. @37633a4c).