@@ -8,6 +8,8 @@ For a list of all of the issues and pull requests since the last
8
8
revision, see the :ref: `github-stats `.
9
9
10
10
.. note ::
11
+ matplotlib 2.0 supports Python 2.7, and 3.4+
12
+
11
13
matplotlib 1.5 supports Python 2.7, 3.4, and 3.5
12
14
13
15
matplotlib 1.4 supports Python 2.6, 2.7, 3.3, and 3.4
@@ -23,9 +25,192 @@ revision, see the :ref:`github-stats`.
23
25
.. contents :: Table of Contents
24
26
:depth: 3
25
27
28
+ New in matplotlib-2.0
29
+ =====================
30
+
31
+ New rcParams
32
+ ------------
33
+
34
+ The parameters ``xtick.top ``, ``xtick.bottom ``, ``ytick.left ``
35
+ and ``ytick.right `` were added to control where the ticks
36
+ are drawn.
37
+
38
+ Furthermore, the parameters ``xtick.major.top ``, ``xtick.major.bottom ``,
39
+ ``xtick.minor.top ``, ``xtick.minor.bottom ``, ``ytick.major.left ``,
40
+ ``ytick.major.right ``, ``ytick.minor.left ``, and ``ytick.minor.right `` were
41
+ added to control were ticks are drawn.
42
+
43
+ ``hist.bins `` to control the default number of bins to use in
44
+ `~matplotlib.axes.Axes.hist `. This can be an `int `, a list of floats, or
45
+ ``'auto' `` if numpy >= 1.11 is installed.
46
+
47
+
48
+
49
+ Improved color conversion API and RGBA support
50
+ ----------------------------------------------
51
+
52
+ The :module: `~matplotlib.colors ` gained a new color conversion API with
53
+ full support for the alpha channel. The main public functions are
54
+ :func: `~matplotlib.colors.is_color_like `, :func: `matplotlib.colors.to_rgba `,
55
+ :func: `matplotlib.colors.to_rgba_array ` and :func: `~matplotlib.colors.to_hex `.
56
+ RGBA quadruplets are encoded in hex format as `#rrggbbaa `.
57
+
58
+ A side benefit is that the Qt options editor now allows setting the alpha
59
+ channel of the artists as well.
60
+
61
+
62
+ Configuration (rcParams)
63
+ ------------------------
64
+
65
+ +---------------------------------+--------------------------------------------------+
66
+ | Parameter | Description |
67
+ +=================================+==================================================+
68
+ | `date.autoformatter.year` | foramt string for 'year' scale dates |
69
+ +---------------------------------+--------------------------------------------------+
70
+ | `date.autoformatter.month` | format string for 'month' scale dates |
71
+ +---------------------------------+--------------------------------------------------+
72
+ | `date.autoformatter.day` | format string for 'day' scale dates |
73
+ +---------------------------------+--------------------------------------------------+
74
+ | `date.autoformatter.hour` | format string for 'hour' scale times |
75
+ +---------------------------------+--------------------------------------------------+
76
+ | `date.autoformatter.minute` | format string for 'minute' scale times |
77
+ +---------------------------------+--------------------------------------------------+
78
+ | `date.autoformatter.second` | format string for 'second' scale times |
79
+ +---------------------------------+--------------------------------------------------+
80
+ | `date.autoformatter.microsecond` | format string for 'microsecond' scale times |
81
+ +---------------------------------+--------------------------------------------------+
82
+ | `scatter.marker` | default marker for scatter plot |
83
+ +---------------------------------+--------------------------------------------------+
84
+ | `svg.hashsalt` | see note |
85
+ +---------------------------------+--------------------------------------------------+
86
+
87
+ Added ``svg.hashsalt `` key to rcParams
88
+ ```````````````````````````````````````
89
+
90
+ If ``svg.hashsalt `` is ``None `` (which it is by default), the svg
91
+ backend uses ``uuid4 `` to generate the hash salt. If it is not
92
+ ``None ``, it must be a string that is used as the hash salt instead of
93
+ ``uuid4 ``. This allows for deterministic SVG output.
94
+
95
+
96
+ Removed the ``svg.image_noscale `` rcParam
97
+ `````````````````````````````````````````
98
+
99
+ As a result of the extensive changes to image handling, the
100
+ ``svg.image_noscale `` rcParam has been removed. The same
101
+ functionality may be achieved by setting ``interpolation='none' `` on
102
+ individual images or globally using the ``image.interpolation ``
103
+ rcParam.
104
+
105
+
106
+ Qualitative colormaps
107
+ ---------------------
108
+
109
+ ColorBrewer's "qualitative" colormaps ("Accent", "Dark2", "Paired",
110
+ "Pastel1", "Pastel2", "Set1", "Set2", "Set3") were intended for discrete
111
+ categorical data, with no implication of value, and therefore have been
112
+ converted to ``ListedColormap `` instead of ``LinearSegmentedColormap ``, so
113
+ the colors will no longer be interpolated and they can be used for
114
+ choropleths, labeled image features, etc.
115
+
116
+
117
+
118
+ Axis offset label now responds to `labelcolor `
119
+ ----------------------------------------------
120
+
121
+ Axis offset labels are now colored the same as axis tick markers when `labelcolor ` is altered.
122
+
123
+ Improved offset text choice
124
+ ---------------------------
125
+ The default offset-text choice was changed to only use significant digits that
126
+ are common to all ticks (e.g. 1231..1239 -> 1230, instead of 1231), except when
127
+ they straddle a relatively large multiple of a power of ten, in which case that
128
+ multiple is chosen (e.g. 1999..2001->2000).
129
+
130
+
131
+ Style parameter blacklist
132
+ -------------------------
133
+
134
+ In order to prevent unexpected consequences from using a style, style
135
+ files are no longer able to set parameters that affect things
136
+ unrelated to style. These parameters include::
137
+
138
+ 'interactive', 'backend', 'backend.qt4', 'webagg.port',
139
+ 'webagg.port_retries', 'webagg.open_in_browser', 'backend_fallback',
140
+ 'toolbar', 'timezone', 'datapath', 'figure.max_open_warning',
141
+ 'savefig.directory', 'tk.window_focus', 'hardcopy.docstring'
142
+
143
+
144
+ Change in default font
145
+ ----------------------
146
+
147
+ The default font used by matplotlib in text has been changed to DejaVu Sans and
148
+ DejaVu Serif for the sans-serif and serif families, respectively. The DejaVu
149
+ font family is based on the previous matplotlib default --Bitstream Vera-- but
150
+ includes a much wider range of characters.
151
+
152
+ The default mathtext font has been changed from Computer Modern to the DejaVu
153
+ family to maintain consistency with regular text. Two new options for the
154
+ ``mathtext.fontset `` configuration parameter have been added: ``dejavusans ``
155
+ (default) and ``dejavuserif ``. Both of these options use DejaVu glyphs whenever
156
+ possible and fall back to STIX symbols when a glyph is not found in DejaVu. To
157
+ return to the previous behavior, set the rcParam ``mathtext.fontset `` to ``cm ``.
158
+
159
+
160
+ Faster text rendering
161
+ ---------------------
162
+
163
+ Rendering text in the Agg backend is now less fuzzy and about 20%
164
+ faster to draw.
165
+
166
+
167
+ Improvements for the Qt figure options editor
168
+ ---------------------------------------------
169
+
170
+ Various usability improvements were implemented for the Qt figure options
171
+ editor, among which:
172
+ - Line style entries are now sorted without duplicates.
173
+ - The colormap and normalization limits can now be set for images.
174
+ - Line edits for floating values now display only as many digits as necessary
175
+ to avoid precision loss. An important bug was also fixed regarding input
176
+ validation using Qt5 and a locale where the decimal separator is ",".
177
+ - The axes selector now uses shorter, more user-friendly names for axes, and
178
+ does not crash if there are no axes.
179
+ - Line and image entries using the default labels ("_lineX", "_imageX") are now
180
+ sorted numerically even when there are more than 10 entries.
181
+
182
+
183
+ Improved image support
184
+ ----------------------
185
+
186
+ Prior to version 2.0, matplotlib resampled images by first applying
187
+ the color map and then resizing the result. Since the resampling was
188
+ performed on the colored image, this introduced colors in the output
189
+ image that didn't actually exist in the color map. Now, images are
190
+ resampled first (and entirely in floating-point, if the input image is
191
+ floating-point), and then the color map is applied.
192
+
193
+ In order to make this important change, the image handling code was
194
+ almost entirely rewritten. As a side effect, image resampling uses
195
+ less memory and fewer datatype conversions than before.
196
+
197
+ The experimental private feature where one could "skew" an image by
198
+ setting the private member ``_image_skew_coordinate `` has been
199
+ removed. Instead, images will obey the transform of the axes on which
200
+ they are drawn.
201
+
202
+
203
+ Support for HiDPI (Retina) displays in the NbAgg and WebAgg backends
204
+ --------------------------------------------------------------------
205
+
206
+ The NbAgg and WebAgg backends will now use the full resolution of your
207
+ high-pixel-density display.
208
+
209
+
210
+
26
211
.. _whats-new-1-5 :
27
212
28
- new in matplotlib-1.5
213
+ New in matplotlib-1.5
29
214
=====================
30
215
31
216
Interactive OO usage
0 commit comments