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
figure
withadd_subplot
orsubplots
(GH#50). This is a major improvement!GridSpec
now accepts physical units, rather than havingsubplots
handle the units (GH#50).Allow “hanging” twin x and y axes as members of the
EdgeStack
container. Arbitrarily many siblings are now permitted.Use
GeometrySolver
for calculating various automatic layout stuff instead of having 1000 hiddenFigure
methods (GH#50).Use
EdgeStack
class for handling stacks of colorbars, legends, and text (GH#50).
Internals
Handle all projection keyword arguments in
add_subplot
instead ofsubplots
(GH#50).Panels, colorbars, and legends are now members of
EdgeStack
stacks rather than getting inserted directly into the mainGridSpec
(GH#50).
ProPlot v0.4.2 (2020-01-09)¶
Features
Add
family
keyword arg toshow_fonts
(GH#106).Package the TeX Gyre font series with ProPlot (GH#106). Remove a couple other fonts.
Put the TeX Gyre fonts at the head of the serif, sans-serif, monospace, cursive, and fantasy
rcParams
font family lists (GH#104, GH#106).
Bug fixes
Fix issues with Fira Math weights unrecognized by matplotlib (GH#106).
ProPlot v0.4.1 (2020-01-08)¶
Deprecation
Change the default
.proplotrc
format from YAML to the.matplotlibrc
syntax (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_cycles
bars into categories, just likeshow_cmaps
(GH#100).
Bug fixes
Fix issue where
show_cmaps
andshow_cycles
draw empty axes (GH#100).Add back the default .proplorc file to docs (GH#101). To do this,
conf.py
auto-generates a file in_static
.
Internals
Add
geogrid.color/linewidth/etc
andgridminor.color/linewidth/etc
props as children ofgrid.color/linewidth/etc
(GH#101).Various
rc_configurator
improvements, remove outdated global variables (GH#101).Better error handling when loading colormap/cycle files, and calls to
Colormap
andCycle
now raise errors while calls toregister_cmaps
andregister_cycles
still issue warnings (GH#100).
ProPlot v0.4.0 (2020-01-07)¶
Deprecated
Rename
basemap_defaults
tobasemap_kwargs
andcartopy_projs
tocartopy_names
(@431a06ce).Remove
subplots.innerspace
,subplots.titlespace
,subplots.xlabspace
, andsubplots.ylabspace
spacing arguments, automatically calculate default non-tight spacing using_get_space
based on current tick lengths, label sizes, etc.Remove redundant
use_fonts
, usercParams['sans-serif']
precedence instead (GH#95).dualx
anddualy
no longer accept “scale-spec” arguments. Must be a function, two functions, or an axis scale instance (GH#96).Remove
Axes
share[x|y]
,span[x|y]
, andalign[x|y]
kwargs (GH#99). These settings are now always figure-wide.Rename
Cycle
samples
toN
, renameshow_colors
nbreak
tonhues
(GH#98).
Features
Add
from_file
static 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
,ygridcolor
keyword args toformat
(GH#95).Add getters and setters for various
Figure
settings likeshare[x|y]
,span[x|y]
, andalign[x|y]
(GH#99).Add
Figure
fallback_to_cm
kwarg. This is used byshow_fonts
to show dummy glyphs to clearly illustrate when fonts are missing characters, but preserve graceful fallback for end user.Improve
Proj
constructor function. It now acceptsProjection
andBasemap
instances, 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=True
toget
,fill
, orcategory
(GH#91).
Bug fixes
Fix issues with
dualx
anddualy
with 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_cycles
bug (GH#90) and show cycles using colorbars rather than lines (GH#98).
Internals
Define
rc
default values with inline dictionaries rather than with a default.proplotrc
file, change the auto-generated user.proplotrc
(GH#91).Remove useless
panel_kw
keyword arg fromlegend_wrapper
andcolorbar_wrapper
(GH#91). Removewflush
,hflush
, andflush
keyword args fromsubplots
that 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
180
degrees 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 inline
fails silently so the backend is not instantiated (@cc39dc56).Save the
cyclic
andgamma
attributes in JSON files too (@8201a806).
Documentation
Cleanup notebooks, especially the colormaps demo (e.g. @952d4cb3).
Internals
Change
clock
toperf_counter
(GH#86).
ProPlot v0.2.7 (2019-12-09)¶
Bug fixes
Fix issue where
AutoFormatter
logarithmic scale points are incorrect (@9b164733).
Documentation
Improve Configuring proplot documentation (@9d50719b).
Internals
ProPlot v0.2.5 (2019-12-07)¶
Features
Much better
CutoffScale
algorithm, permit arbitrary cutoffs (GH#83).
ProPlot v0.2.4 (2019-12-07)¶
Deprecated
Remove
fonts_system
andfonts_proplot
, renamecolordict
tocolors
, 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_wrapper
source code, handle minor ticks using the builtin matplotlib API just like major ticks (@b9976220).
ProPlot v0.2.2 (2019-12-04)¶
Deprecated
Rename
axes_grid
tosubplot_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_setup
toipython_autoreload
,ipython_autosave
, andipython_matplotlib
, respectively (@84e80c1e).
ProPlot v0.2.0 (2019-12-02)¶
Deprecated
Remove the
nbsetup
rc setting in favor of separateautosave
,autoreload
, andmatplotlib
settings for triggering the respective%
magic commands. (@3a622887;nbsetup
is still accepted but no longer documented).Rename the
format
rc setting in favor of theinlinefmt
setting (@3a622887;format
is still accepted but no longer documented).Rename
FlexibleGridSpec
andFlexibleSubplotSpec
toGridSpec
andSubplotSpec
(@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
osx
andqt
(@3a622887).
Bug fixes
Disable automatic resizing for the
nbAgg
interactive inline backend. Found no suitable workaround (@3a622887).
Internals
Organize the
rc
documentation and the default.proplotrc
file (@3a622887).Rename
rcParamsCustom
torcParamsLong
(@3a622887; this is inaccessible to the user).When calling
fig.canvas.print_figure()
on a stale figure, callfig.canvas.draw()
first. May be overkill forsavefig
but critical for correctly displaying already-drawn notebook figures.
ProPlot v0.1.0 (2019-12-01)¶
Internals
Include
flake8
in 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).