Skip to content

Commit 6c5e97a

Browse files
committed
Merge branch 'master' into legend-colorbar-classes
2 parents 5fd7b08 + 6fdf978 commit 6c5e97a

File tree

252 files changed

+7508
-4852
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

252 files changed

+7508
-4852
lines changed

.gitignore

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ docs/api
1414
docs/_build
1515

1616
# Subfolders in data directories
17-
**/cmaps/**
18-
**/cycles/**
19-
**/fonts/**
17+
**/cmaps/*/
18+
**/cycles/*/
19+
**/fonts/*/
2020

2121
# Folder of notebooks for testing and bugfixing
2222
local

.pre-commit-config.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ repos:
77
- id: double-quote-string-fixer
88
- id: check-docstring-first
99
- id: check-merge-conflict
10-
- id: check-yaml
11-
- id: debug-statements
1210
- id: end-of-file-fixer
1311
- id: trailing-whitespace
1412
- id: flake8

CHANGELOG.rst

Lines changed: 199 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -15,77 +15,230 @@ ProPlot v1.0.0 (2020-##-##)
1515
This will be published when some major refactoring tasks are completed.
1616
See :pr:`45`, :pr:`46`, and :pr:`50`.
1717

18+
ProPlot v0.5.0 (2020-##-##)
19+
===========================
20+
.. rubric:: Features
21+
22+
- Users can now use `~proplot.subplots.figure` with `~proplot.subplots.Figure.add_subplot`
23+
*or* `~proplot.subplots.subplots` (:pr:`50`). This is a major improvement!
24+
- `~proplot.subplots.GridSpec` now accepts physical units, rather than having
25+
`~proplot.subplots.subplots` handle the units (:pr:`50`).
26+
- Allow "hanging" twin *x* and *y* axes as members of the `~proplot.subplots.EdgeStack`
27+
container. Arbitrarily many siblings are now permitted.
28+
- Use `~proplot.subplots.GeometrySolver` for calculating various automatic layout
29+
stuff instead of having 1000 hidden `~proplot.subplots.Figure` methods (:pr:`50`).
30+
- Use `~proplot.subplots.EdgeStack` class for handling
31+
stacks of colorbars, legends, and text (:pr:`50`).
32+
33+
.. rubric:: Internals
34+
35+
- Handle all projection keyword arguments in `~proplot.subplots.Figure.add_subplot`
36+
instead of `~proplot.subplots.subplots` (:pr:`50`).
37+
- Panels, colorbars, and legends are now members of `~proplot.subplots.EdgeStack`
38+
stacks rather than getting inserted directly into
39+
the main `~proplot.subplots.GridSpec` (:pr:`50`).
40+
41+
ProPlot v0.4.0 (2020-01-07)
42+
===========================
43+
.. rubric:: Deprecated
44+
45+
46+
- Rename `basemap_defaults` to `~proplot.projs.basemap_kwargs` and `cartopy_projs`
47+
to `~proplot.projs.cartopy_names` (:commit:`431a06ce`).
48+
- Remove ``subplots.innerspace``, ``subplots.titlespace``,
49+
``subplots.xlabspace``, and ``subplots.ylabspace`` spacing arguments,
50+
automatically calculate default non-tight spacing using `~proplot.subplots._get_space`
51+
based on current tick lengths, label sizes, etc.
52+
- Remove redundant `~proplot.rctools.use_fonts`, use ``rcParams['sans-serif']``
53+
precedence instead (:pr:`95`).
54+
- `~proplot.axes.Axes.dualx` and `~proplot.axes.Axes.dualy` no longer accept "scale-spec" arguments.
55+
Must be a function, two functions, or an axis scale instance (:pr:`96`).
56+
- Remove `~proplot.axes.Axes` ``share[x|y]``, ``span[x|y]``, and ``align[x|y]`` kwargs
57+
(:pr:`99`).
58+
These settings are now always figure-wide.
59+
- Rename `~proplot.styletools.Cycle` ``samples`` to ``N``, rename
60+
`~proplot.styletools.show_colors` ``nbreak`` to ``nhues`` (:pr:`98`).
61+
62+
.. rubric:: Features
63+
64+
- Add `~proplot.styletools.LinearSegmentedColormap.from_file` static methods (:pr:`98`).
65+
You can now load files by passing a name to `~proplot.styletools.Colormap`.
66+
- Add TeX Gyre Heros as open source Helvetica-alternative; this is the new default font.
67+
Add Fira Math as DejaVu Sans-alternative; has complete set of math characters (:pr:`95`).
68+
- Add `xlinewidth`, `ylinewidth`, `xgridcolor`, `ygridcolor` keyword
69+
args to `~proplot.axes.XYAxes.format` (:pr:`95`).
70+
- Add getters and setters for various `~proplot.subplots.Figure` settings like ``share[x|y]``,
71+
``span[x|y]``, and ``align[x|y]`` (:pr:`99`).
72+
- Add `~proplot.subplots.Figure` ``fallback_to_cm`` kwarg. This is used by
73+
`~proplot.styletools.show_fonts` to show dummy glyphs to clearly illustrate when fonts are
74+
missing characters, but preserve graceful fallback for end user.
75+
- Improve `~proplot.projs.Proj` constructor function. It now accepts
76+
`~cartopy.crs.Projection` and `~mpl_toolkits.basemap.Basemap` instances, just like other
77+
constructor functions, and returns only the projection instance (:pr:`92`).
78+
- `~proplot.rctools.rc` `~proplot.rctools.rc_configurator.__getitem__` always
79+
returns the setting. To get context block-restricted settings, you must explicitly pass
80+
``context=True`` to `~proplot.rctools.rc_configurator.get`, `~proplot.rctools.rc_configurator.fill`,
81+
or `~proplot.rctools.rc_configurator.category` (:pr:`91`).
82+
83+
.. rubric:: Bug fixes
84+
85+
- Fix `~proplot.rctools.rc_configurator.context` bug (:issue:`80` and :pr:`91`).
86+
- Fix issues with `~proplot.axes.Axes.dualx` and `~proplot.axes.Axes.dualy` with non-linear parent scales (:pr:`96`).
87+
- Ignore TTC fonts because they cannot be saved in EPS/PDF figures (:issue:`94` and :pr:`95`).
88+
- Do not try to use Helvetica Neue because "thin" font style is read as regular (:issue:`94` and :pr:`95`).
89+
90+
.. rubric:: Documentation
91+
92+
- Use the imperative mood for docstring summaries (:pr:`92`).
93+
- Fix `~proplot.styletools.show_cycles` bug (:pr:`90`) and show cycles using colorbars
94+
rather than lines (:pr:`98`).
95+
96+
.. rubric:: Internals
97+
98+
- Define `~proplot.rctools.rc` default values with inline dictionaries rather than
99+
with a default ``.proplotrc`` file, change the auto-generated user ``.proplotrc``
100+
(:pr:`91`).
101+
- Remove useless `panel_kw` keyword arg from `~proplot.wrappers.legend_wrapper` and
102+
`~proplot.wrappers.colorbar_wrapper` (:pr:`91`). Remove `wflush`, `hflush`,
103+
and `flush` keyword args from `~proplot.subplots.subplots` that should have been
104+
removed long ago.
105+
106+
ProPlot v0.3.1 (2019-12-16)
107+
===========================
108+
.. rubric:: Bug fixes
109+
110+
- Fix issue where custom fonts were not synced (:commit:`a1b47b4c`).
111+
- Fix issue with latest versions of matplotlib where ``%matplotlib inline``
112+
fails *silently* so the backend is not instantiated (:commit:`cc39dc56`).
113+
114+
ProPlot v0.3.0 (2019-12-15)
115+
===========================
116+
.. rubric:: Deprecated
117+
118+
- Remove ``'Moisture'`` colormap (:commit:`cf8952b1`).
119+
120+
.. rubric:: Features
121+
122+
- Add `~proplot.styletools.use_font`, only sync Google Fonts fonts (:pr:`87`).
123+
- New ``'DryWet'`` colormap is colorblind friendly (:commit:`0280e266`).
124+
- Permit shifting arbitrary colormaps by ``180`` degrees by appending the
125+
name with ``'_shifted'``, just like ``'_r'`` (:commit:`e2e2b2c7`).
126+
127+
.. rubric:: Bug fixes
128+
129+
- Add brute force workaround for saving colormaps with
130+
*callable* segmentdata (:commit:`8201a806`).
131+
- Fix issue with latest versions of matplotlib where ``%matplotlib inline``
132+
fails *silently* so the backend is not instantiated (:commit:`cc39dc56`).
133+
- Fix `~proplot.styletools.LinearSegmentedColormap.shifted` when `shift` is
134+
not ``180`` (:commit:`e2e2b2c7`).
135+
- Save the ``cyclic`` and ``gamma`` attributes in JSON files too (:commit:`8201a806`).
136+
137+
.. rubric:: Documentation
138+
139+
- Cleanup notebooks, especially the colormaps demo (e.g. :commit:`952d4cb3`).
140+
141+
.. rubric:: Internals
142+
143+
- Change `~time.clock` to `~time.perf_counter` (:pr:`86`).
144+
145+
ProPlot v0.2.7 (2019-12-09)
146+
===========================
147+
148+
.. rubric:: Bug fixes
149+
150+
- Fix issue where `~proplot.styletools.AutoFormatter` logarithmic scale
151+
points are incorrect (:commit:`9b164733`).
152+
153+
.. rubric:: Documentation
154+
155+
- Improve :ref:`Configuring proplot` documentation (:commit:`9d50719b`).
156+
157+
.. rubric:: Internals
158+
159+
- Remove `prefix`, `suffix`, and `negpos` keyword args from
160+
`~proplot.styletools.SimpleFormatter`, remove `precision` keyword arg from
161+
`~proplot.styletools.AutoFormatter` (:commit:`8520e363`).
162+
- Make ``'deglat'``, ``'deglon'``, ``'lat'``, ``'lon'``, and ``'deg'`` instances
163+
of `~proplot.styletools.AutoFormatter` instead of `~proplot.styletools.SimpleFormatter`
164+
(:commit:`8520e363`). The latter should just be used for contours.
165+
166+
ProPlot v0.2.6 (2019-12-08)
167+
===========================
168+
.. rubric:: Bug fixes
169+
170+
- Fix issue where twin axes are drawn *twice* (:commit:`56145122`).
171+
172+
173+
ProPlot v0.2.5 (2019-12-07)
174+
===========================
175+
.. rubric:: Features
176+
177+
- Much better `~proplot.axistools.CutoffScale` algorithm, permit arbitrary
178+
cutoffs (:pr:`83`).
179+
18180
ProPlot v0.2.4 (2019-12-07)
19181
===========================
20-
Deprecated
21-
----------
182+
.. rubric:: Deprecated
183+
22184
- Rename `ColorCacheDict` to `~proplot.styletools.ColorDict` (:commit:`aee7d1be`).
23185
- Rename `colors` to `~proplot.styletools.Colors` (:commit:`aee7d1be`)
24186
- Remove `fonts_system` and `fonts_proplot`, rename `colordict` to
25187
`~proplot.styletools.colors`, make top-level variables
26188
more robust (:commit:`861583f8`).
27189

28-
Documentation
29-
-------------
190+
.. rubric:: Documentation
191+
30192
- Params table for `~proplot.styletools.show_fonts` (:commit:`861583f8`).
31193

32-
Internals
33-
---------
194+
.. rubric:: Internals
195+
34196
- Improvements to `~proplot.styletools.register_colors`.
35197

36198
ProPlot v0.2.3 (2019-12-05)
37199
===========================
38-
Bug fixes
39-
---------
200+
.. rubric:: Bug fixes
201+
40202
- Fix issue with overlapping gridlines (:commit:`8960ebdc`).
41203
- Fix issue where auto colorbar labels are not applied when ``globe=True`` (:commit:`ecb3c899`).
42204
- More sensible zorder for gridlines (:commit:`90d94e55`).
43205
- Fix issue where customized super title settings are overridden when
44206
new axes are created (:commit:`35cb21f2`).
45207

46-
Documentation
47-
-------------
208+
.. rubric:: Documentation
209+
48210
- Organize ipython notebook documentation (:commit:`35cb21f2`).
49211

50-
Internals
51-
---------
212+
.. rubric:: Internals
213+
52214
- Major cleanup of the `~proplot.wrappers.colorbar_wrapper` source code, handle
53215
minor ticks using the builtin matplotlib API just like major ticks (:commit:`b9976220`).
54216

55217
ProPlot v0.2.2 (2019-12-04)
56218
===========================
57-
Bug fixes
58-
---------
59-
- Fix shared *x* and *y* axis bugs (:commit:`ac14e9dd`).
219+
.. rubric:: Deprecated
60220

61-
Deprecated
62-
----------
63221
- Rename `~proplot.subplots.axes_grid` to `~proplot.subplots.subplot_grid` (:commit:`ac14e9dd`).
64222

65-
Documentation
66-
-------------
223+
.. rubric:: Bug fixes
224+
225+
- Fix shared *x* and *y* axis bugs (:commit:`ac14e9dd`).
226+
227+
.. rubric:: Documentation
228+
67229
- Make notebook examples PEP8 compliant (:commit:`97f5ffd4`). Much more readable now.
68230

69231
ProPlot v0.2.1 (2019-12-02)
70232
===========================
71-
Deprecated
72-
----------
233+
.. rubric:: Deprecated
234+
73235
- Rename `autoreload_setup`, `autosave_setup`, and `matplotlib_setup` to
74236
`~proplot.rctools.ipython_autoreload`, `~proplot.rctools.ipython_autosave`, and `~proplot.rctools.ipython_matplotlib`, respectively (:commit:`84e80c1e`).
75237

76238
ProPlot v0.2.0 (2019-12-02)
77239
===========================
78-
Features
79-
--------
80-
- Support manual resizing for all backends, including ``osx`` and ``qt`` (:commit:`3a622887`).
240+
.. rubric:: Deprecated
81241

82-
Bug fixes
83-
---------
84-
- Disable automatic resizing for the ``nbAgg`` interactive inline backend. Found no
85-
suitable workaround (:commit:`3a622887`).
86-
87-
Deprecated
88-
----------
89242
- Remove the ``nbsetup`` rc setting in favor of separate ``autosave``, ``autoreload``,
90243
and ``matplotlib`` settings for triggering the respective ``%`` magic commands.
91244
(:commit:`3a622887`; ``nbsetup`` is still accepted but no longer documented).
@@ -95,8 +248,17 @@ Deprecated
95248
and ``SubplotSpec`` (:commit:`3a622887`; until :pr:`50` is merged it is impossible
96249
to use these manually, so this won't bother anyone).
97250

98-
Internals
99-
---------
251+
.. rubric:: Features
252+
253+
- Support manual resizing for all backends, including ``osx`` and ``qt`` (:commit:`3a622887`).
254+
255+
.. rubric:: Bug fixes
256+
257+
- Disable automatic resizing for the ``nbAgg`` interactive inline backend. Found no
258+
suitable workaround (:commit:`3a622887`).
259+
260+
.. rubric:: Internals
261+
100262
- Organize the ``rc`` documentation and the default ``.proplotrc`` file (:commit:`3a622887`).
101263
- Rename ``rcParamsCustom`` to ``rcParamsLong``
102264
(:commit:`3a622887`; this is inaccessible to the user).
@@ -106,16 +268,16 @@ Internals
106268

107269
ProPlot v0.1.0 (2019-12-01)
108270
===========================
109-
Internals
110-
---------
271+
.. rubric:: Internals
272+
111273
- Include `flake8` in Travis CI testing (:commit:`8743b857`).
112274
- Enforce source code PEP8 compliance (:commit:`78da51a7`).
113275
- Use pre-commit for all future commits (:commit:`e14f6809`).
114276
- Implement tight layout stuff with canvas monkey patches (:commit:`67221d10`).
115277
ProPlot now works for arbitrary backends, not just inline and qt.
116278

117-
Documentation
118-
-------------
279+
.. rubric:: Documentation
280+
119281
- Various `RTD bugfixes <https://github.com/readthedocs/readthedocs.org/issues/6412>`__ (e.g. :commit:`37633a4c`).
120282

121283
ProPlot v0.0.0 (2019-11-27)

0 commit comments

Comments
 (0)