[Python-modules-commits] [matplotlib] 01/10: Import matplotlib_2.0.0~rc2.orig.tar.gz
Sandro Tosi
morph at moszumanska.debian.org
Mon Dec 19 02:30:25 UTC 2016
This is an automated email from the git hooks/post-receive script.
morph pushed a commit to branch experimental
in repository matplotlib.
commit 3dd925735c3295288f085343dfc94a31066955fa
Author: Sandro Tosi <morph at debian.org>
Date: Sun Dec 18 18:53:19 2016 -0500
Import matplotlib_2.0.0~rc2.orig.tar.gz
---
doc-requirements.txt | 2 +-
doc/api/animation_api.rst | 338 +++++++++++++++-
doc/api/api_changes.rst | 19 +
doc/api/api_changes/2016-12-09-AL_afm.rst | 7 +
doc/conf.py | 12 +-
doc/faq/howto_faq.rst | 3 +-
.../axes_grid/figures/simple_axisartist1.py | 2 +-
.../axes_grid/figures/simple_axisline2.py | 2 +-
doc/users/dflt_style_changes.rst | 30 +-
doc/users/github_stats.rst | 104 +++--
doc/users/plotting/examples/custom_boxstyle02.py | 2 +-
doc/users/whats_new.rst | 4 +-
doc/users/whats_new/plot_surface.rst | 15 +
examples/api/barchart_demo.py | 2 +-
examples/api/date_demo.py | 2 +-
examples/api/font_file.py | 2 +-
examples/api/histogram_path_demo.py | 2 +-
examples/api/radar_chart.py | 2 +-
examples/api/unicode_minus.py | 8 +-
examples/axes_grid/demo_curvelinear_grid.py | 2 +-
examples/axes_grid/demo_floating_axes.py | 2 +-
examples/axes_grid/demo_parasite_axes2.py | 2 +-
examples/event_handling/README.txt | 2 +-
examples/event_handling/lasso_demo.py | 3 +-
examples/event_handling/legend_picking.py | 2 +-
examples/event_handling/viewlims.py | 4 +-
.../streamplot_demo_masking.py | 4 +-
examples/misc/ftface_props.py | 4 +-
examples/misc/sample_data_demo.py | 2 +-
examples/misc/svg_filter_line.py | 4 +-
examples/misc/svg_filter_pie.py | 10 +-
examples/mplot3d/surface3d_demo.py | 2 +-
examples/mplot3d/surface3d_demo2.py | 2 +-
examples/mplot3d/surface3d_demo3.py | 3 +-
examples/mplot3d/surface3d_radial_demo.py | 2 +-
examples/pylab_examples/README | 11 -
examples/pylab_examples/accented_text.py | 2 +-
examples/pylab_examples/bar_stacked.py | 2 +-
examples/pylab_examples/barchart_demo.py | 2 +-
examples/pylab_examples/barchart_demo2.py | 3 +-
examples/pylab_examples/centered_ticklabels.py | 2 +-
examples/pylab_examples/custom_ticker1.py | 2 +-
examples/pylab_examples/data_helper.py | 60 ---
examples/pylab_examples/date_index_formatter.py | 6 +-
examples/pylab_examples/demo_agg_filter.py | 3 +-
examples/pylab_examples/demo_bboximage.py | 1 +
examples/pylab_examples/errorbar_subsample.py | 2 +-
examples/pylab_examples/leftventricle_bulleye.py | 2 +-
examples/pylab_examples/log_bar.py | 4 +-
examples/pylab_examples/movie_demo.py | 26 --
examples/pylab_examples/print_stdout.py | 6 +-
examples/pylab_examples/pythonic_matplotlib.py | 4 +-
examples/pylab_examples/scatter_demo2.py | 2 +-
examples/pylab_examples/scatter_masked.py | 2 +-
examples/pylab_examples/stock_demo.py | 19 -
examples/pylab_examples/system_monitor.py | 8 +-
.../text_rotation_relative_to_line.py | 8 +-
.../pylab_examples/tricontour_smooth_delaunay.py | 4 +-
examples/pylab_examples/webapp_demo.py | 2 +-
examples/pyplots/dollar_ticks.py | 2 +-
examples/pyplots/fig_axes_customize_simple.py | 3 +-
examples/pyplots/fig_axes_labels_simple.py | 2 +-
examples/pyplots/fig_x.py | 4 +-
examples/pyplots/whats_new_99_spines.py | 3 +-
examples/shapes_and_collections/scatter_demo.py | 2 +-
.../specialty_plots/topographic_hillshading.py | 2 +-
examples/statistics/histogram_demo_cumulative.py | 2 +-
examples/statistics/violinplot_demo.py | 2 +-
examples/tests/backend_driver.py | 4 -
examples/ticks_and_spines/tick-formatters.py | 18 +-
examples/ticks_and_spines/tick-locators.py | 22 +-
examples/units/bar_unit_demo.py | 2 +-
examples/units/units_sample.py | 2 +-
examples/user_interfaces/README.wx | 2 +-
examples/user_interfaces/embedding_in_tk_canvas.py | 2 +-
examples/user_interfaces/embedding_in_wx4.py | 4 +-
examples/user_interfaces/svg_histogram.py | 11 +-
examples/user_interfaces/svg_tooltip.py | 2 +-
examples/widgets/README.txt | 2 +-
examples/widgets/lasso_selector_demo.py | 12 +-
examples/widgets/rectangle_selector.py | 4 +-
examples/widgets/span_selector.py | 2 +-
lib/matplotlib/_version.py | 4 +-
lib/matplotlib/animation.py | 444 +++++++++++++++------
lib/matplotlib/axes/_axes.py | 21 +-
lib/matplotlib/axes/_base.py | 1 +
lib/matplotlib/backends/backend_agg.py | 6 +-
lib/matplotlib/backends/backend_gtk3.py | 2 +-
lib/matplotlib/backends/backend_qt5.py | 10 +-
lib/matplotlib/backends/backend_tkagg.py | 5 +-
lib/matplotlib/font_manager.py | 177 ++++----
lib/matplotlib/image.py | 2 +-
lib/matplotlib/markers.py | 104 ++---
lib/matplotlib/mlab.py | 4 +-
lib/matplotlib/scale.py | 11 +-
lib/matplotlib/table.py | 4 +
lib/matplotlib/tests/test_axes.py | 35 ++
lib/matplotlib/tests/test_coding_standards.py | 3 -
lib/matplotlib/tests/test_text.py | 12 +
lib/matplotlib/tests/test_ticker.py | 4 +-
lib/matplotlib/text.py | 13 +-
lib/matplotlib/ticker.py | 262 ++++++------
lib/matplotlib/transforms.py | 11 +-
lib/mpl_toolkits/mplot3d/axes3d.py | 89 ++++-
lib/mpl_toolkits/tests/test_mplot3d.py | 21 +-
src/_tkagg.cpp | 19 +-
tools/test_triage.py | 36 +-
107 files changed, 1441 insertions(+), 761 deletions(-)
diff --git a/doc-requirements.txt b/doc-requirements.txt
index 9c2c189..e622825 100644
--- a/doc-requirements.txt
+++ b/doc-requirements.txt
@@ -6,7 +6,7 @@
# Install the documentation requirements with:
# pip install -r doc-requirements.txt
#
-sphinx>1.0
+sphinx>1.0,!=1.5.0
numpydoc
ipython
mock
diff --git a/doc/api/animation_api.rst b/doc/api/animation_api.rst
index d43dc35..3519bca 100644
--- a/doc/api/animation_api.rst
+++ b/doc/api/animation_api.rst
@@ -1,12 +1,332 @@
-*********
-animation
-*********
+======================
+ ``animation`` module
+======================
+.. automodule:: matplotlib.animation
-:mod:`matplotlib.animation`
-===========================
+.. contents:: Table of Contents
+ :depth: 1
+ :local:
+ :backlinks: entry
-.. automodule:: matplotlib.animation
- :members:
- :undoc-members:
- :show-inheritance:
+
+Animation
+=========
+
+The easiest way to make a live animation in matplotlib is to use one of the
+`Animation` classes.
+
+.. autosummary::
+ :toctree: _as_gen
+ :nosignatures:
+
+ FuncAnimation
+ ArtistAnimation
+
+In both cases it is critical to keep a reference to the instance
+object. The animation is advanced by a timer (typically from the host
+GUI framework) which the `Animation` object holds the only reference
+to. If you do not hold a reference to the `Animation` object, it (and
+hence the timers), will be garbage collected which will stop the
+animation.
+
+To save an animation to disk use
+
+.. autosummary::
+ :toctree: _as_gen
+ :nosignatures:
+
+ Animation.save
+ Animation.to_html5_video
+
+See :ref:`ani_writer_classes` below for details about what movie formats are supported.
+
+
+``FuncAnimation``
+-----------------
+
+The inner workings of `FuncAnimation` is more-or-less::
+
+ for d in frames:
+ artists = func(d, *fargs)
+ fig.canvas.draw_idle()
+ plt.pause(interval)
+
+
+with details to handle 'blitting' (to dramatically improve the live
+performance), to be non-blocking, handle repeats, multiple animated
+axes, and easily save the animation to a movie file.
+
+'Blitting' is a `old technique
+<https://en.wikipedia.org/wiki/Bit_blit>`__ in computer graphics. The
+general gist is to take an existing bit map (in our case a mostly
+rasterized figure) and then 'blit' one more artist on top. Thus, by
+managing a saved 'clean' bitmap, we can only re-draw the few artists
+that are changing at each frame and possibly save significant amounts of
+time. When using blitting (by passing ``blit=True``) the core loop of
+`FuncAnimation` gets a bit more complicated ::
+
+ ax = fig.gca()
+
+ def update_blit(artists):
+ fig.canvas.restore_region(bg_cache)
+ for a in artists:
+ a.axes.draw_artist(a)
+
+ ax.figure.canvas.blit(ax.bbox)
+
+ artists = init_func()
+
+ for a in artists:
+ a.set_animated(True)
+
+ fig.canvas.draw()
+ bg_cache = fig.canvas.copy_from_bbox(ax.bbox)
+
+ for f in frames:
+ artists = func(f, *fargs)
+ update_blit(artists)
+ plt.pause(interval)
+
+This is of course leaving out many details (such as updating the
+background when the figure is resized or fully re-drawn). However,
+this hopefully minimalist example gives a sense of how ``init_func``
+and ``func`` are used inside of `FuncAnimation` and the theory of how
+'blitting' works.
+
+The expected signature on ``func`` and ``init_func`` is very simple to
+keep `FuncAnimation` out of your book keeping and plotting logic, but
+this means that the callable objects you pass in must know what
+artists they should be working on. There are several approaches to
+handling this, of varying complexity and encapsulation. The simplest
+approach, which works quite well in the case of a script, is to define the
+artist at a global scope and let Python sort things out. For example ::
+
+ import numpy as np
+ import matplotlib.pyplot as plt
+ from matplotlib.animation import FuncAnimation
+
+ fig, ax = plt.subplots()
+ xdata, ydata = [], []
+ ln, = plt.plot([], [], 'ro', animated=True)
+
+ def init():
+ ax.set_xlim(0, 2*np.pi)
+ ax.set_ylim(-1, 1)
+ return ln,
+
+ def update(frame):
+ xdata.append(frame)
+ ydata.append(np.sin(frame))
+ ln.set_data(xdata, ydata)
+ return ln,
+
+ ani = FuncAnimation(fig, update, frames=np.linspace(0, 2*np.pi, 128),
+ init_func=init, blit=True)
+ plt.show()
+
+
+The second method is to us `functools.partial` to 'bind' artists to
+function. A third method is to use closures to build up the required
+artists and functions. A fourth method is to create a class.
+
+
+
+
+Examples
+~~~~~~~~
+
+.. toctree::
+ :maxdepth: 1
+
+ ../examples/animation/animate_decay
+ ../examples/animation/bayes_update
+ ../examples/animation/double_pendulum_animated
+ ../examples/animation/dynamic_image
+ ../examples/animation/histogram
+ ../examples/animation/rain
+ ../examples/animation/random_data
+ ../examples/animation/simple_3danim
+ ../examples/animation/simple_anim
+ ../examples/animation/strip_chart_demo
+ ../examples/animation/unchained
+
+``ArtistAnimation``
+-------------------
+
+
+Examples
+~~~~~~~~
+
+.. toctree::
+ :maxdepth: 1
+
+ ../examples/animation/basic_example
+ ../examples/animation/basic_example_writer
+ ../examples/animation/dynamic_image2
+
+
+
+
+Writer Classes
+==============
+
+
+
+The provided writers fall into two broad categories: pipe-based and
+file-based. The pipe-based writers stream the captured frames over a
+pipe to an external process. The pipe-based variants tend to be more
+performant, but may not work on all systems.
+
+.. autosummary::
+ :toctree: _as_gen
+ :nosignatures:
+
+
+ FFMpegWriter
+ ImageMagickFileWriter
+ AVConvWriter
+
+Alternatively the file-based writers save temporary files for each
+frame which are stitched into a single file at the end. Although
+slower, these writers can be easier to debug.
+
+.. autosummary::
+ :toctree: _as_gen
+ :nosignatures:
+
+ FFMpegFileWriter
+ ImageMagickWriter
+ AVConvFileWriter
+
+
+Fundamentally, a `MovieWriter` provides a way to grab sequential frames
+from the same underlying `~matplotlib.figure.Figure` object. The base
+class `MovieWriter` implements 3 methods and a context manager. The
+only difference between the pipe-based and file-based writers is in the
+arguments to their respective ``setup`` methods.
+
+
+.. autosummary::
+ :toctree: _as_gen
+ :nosignatures:
+
+ MovieWriter.setup
+ FileMovieWriter.setup
+ MovieWriter.grab_frame
+ MovieWriter.finish
+ MovieWriter.saving
+
+
+The ``setup()`` method is used to prepare the writer (possibly opening
+a pipe), successive calls to ``grab_frame()`` capture a single frame
+at a time and ``finish()`` finalizes the movie and writes the output
+file to disk. For example ::
+
+ moviewriter = MovieWriter(...)
+ moviewriter.setup(fig=fig, 'my_movie.ext', dpi=100)
+ for j in range(n):
+ update_figure(n)
+ moviewriter.grab_frame()
+ moviewriter.finish()
+
+
+If using the writer classes directly (not through `Animation.save`), it is strongly encouraged
+to use the `~MovieWriter.saving` context manager ::
+
+ with moviewriter.saving(fig, 'myfile.mp4', dpi=100):
+ for j in range(n):
+ update_figure(n)
+ moviewriter.grab_frame()
+
+
+to ensures that setup and cleanup are performed as necessary.
+
+
+:ref:`animation-moviewriter`
+
+
+.. _ani_writer_classes:
+
+Helper Classes
+==============
+
+
+Animation Base Classes
+----------------------
+
+
+.. autosummary::
+ :toctree: _as_gen
+ :nosignatures:
+
+ Animation
+ TimedAnimation
+
+
+Custom Animation classes
+------------------------
+
+:ref:`animation-subplots`
+
+Writer Registry
+---------------
+
+A module-level registry is provided to map between the name of the
+writer and the class to allow a string to be passed to
+`Animation.save` instead of a writer instance.
+
+.. autosummary::
+ :toctree: _as_gen
+ :nosignatures:
+
+ MovieWriterRegistry
+
+Writer Base Classes
+-------------------
+
+To reduce code duplication base classes
+
+.. autosummary::
+ :toctree: _as_gen
+ :nosignatures:
+
+ MovieWriter
+ FileMovieWriter
+
+and mixins are provided
+
+.. autosummary::
+ :toctree: _as_gen
+ :nosignatures:
+
+ AVConvBase
+ FFMpegBase
+ ImageMagickBase
+
+See the source code for how to easily implement new `MovieWriter`
+classes.
+
+
+Inheritance Diagrams
+====================
+
+.. inheritance-diagram:: matplotlib.animation.FuncAnimation matplotlib.animation.ArtistAnimation
+ :private-bases:
+
+.. inheritance-diagram:: matplotlib.animation.AVConvFileWriter matplotlib.animation.AVConvWriter matplotlib.animation.FFMpegFileWriter matplotlib.animation.FFMpegWriter matplotlib.animation.ImageMagickFileWriter matplotlib.animation.ImageMagickWriter
+ :private-bases:
+
+
+
+Deprecated
+==========
+
+
+.. autosummary::
+ :toctree: _as_gen
+ :nosignatures:
+
+ MencoderBase
+ MencoderFileWriter
+ MencoderWriter
diff --git a/doc/api/api_changes.rst b/doc/api/api_changes.rst
index 357518b..7ec2236 100644
--- a/doc/api/api_changes.rst
+++ b/doc/api/api_changes.rst
@@ -40,6 +40,12 @@ CocoaAgg backend removed
~~~~~~~~~~~~~~~~~~~~~~~~
The deprecated and not fully functional CocoaAgg backend has been removed.
+`round` removed from TkAgg Backend
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+The TkAgg backend had its own implementation of the `round` function. This
+was unused internally and has been removed. Instead, use either the
+`round` builtin function or `numpy.round`.
+
'hold' functionality deprecated
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The 'hold' keyword argument and all functions and methods related
@@ -135,6 +141,19 @@ the kwarg is None which internally sets it to the 'auto' string,
triggering a new algorithm for adjusting the maximum according
to the axis length relative to the ticklabel font size.
+`matplotlib.ticker.LogFormatter`: two new kwargs
+------------------------------------------------
+
+Previously, minor ticks on log-scaled axes were not labeled by
+default. An algorithm has been added to the
+`~matplotlib.ticker.LogFormatter` to control the labeling of
+ticks between integer powers of the base. The algorithm uses
+two parameters supplied in a kwarg tuple named 'minor_thresholds'.
+See the docstring for further explanation.
+
+To improve support for axes using `~matplotlib.ticker.SymmetricLogLocator`,
+a 'linthresh' kwarg was added.
+
New defaults for 3D quiver function in mpl_toolkits.mplot3d.axes3d.py
---------------------------------------------------------------------
diff --git a/doc/api/api_changes/2016-12-09-AL_afm.rst b/doc/api/api_changes/2016-12-09-AL_afm.rst
new file mode 100644
index 0000000..0df780a
--- /dev/null
+++ b/doc/api/api_changes/2016-12-09-AL_afm.rst
@@ -0,0 +1,7 @@
+`afm.get_fontconfig_fonts` returns a list of paths and does not check for existence
+```````````````````````````````````````````````````````````````````````````````````
+
+`afm.get_fontconfig_fonts` used to return a set of paths encoded as a
+``{key: 1, ...}`` dict, and checked for the existence of the paths. It now
+returns a list and dropped the existence check, as the same check is performed
+by the caller (`afm.findSystemFonts`) as well.
diff --git a/doc/conf.py b/doc/conf.py
index d9619d1..849ac11 100644
--- a/doc/conf.py
+++ b/doc/conf.py
@@ -241,9 +241,6 @@ html_favicon = '_static/favicon.ico'
# The paper size ('letter' or 'a4').
latex_paper_size = 'letter'
-# The font size ('10pt', '11pt' or '12pt').
-latex_font_size = '11pt'
-
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title, author, document class [howto/manual]).
@@ -258,8 +255,9 @@ latex_documents = [
# the title page.
latex_logo = None
+latex_elements = {}
# Additional stuff for the LaTeX preamble.
-latex_preamble = r"""
+latex_elements['preamble'] = r"""
% In the parameters section, place a newline after the Parameters
% header. (This is stolen directly from Numpy's conf.py, since it
% affects Numpy-style docstrings).
@@ -279,6 +277,7 @@ latex_preamble = r"""
\usepackage{enumitem}
\setlistdepth{2048}
"""
+latex_elements['pointsize'] = '11pt'
# Documents to append as an appendix to all manuals.
latex_appendices = []
@@ -286,7 +285,10 @@ latex_appendices = []
# If false, no module index is generated.
latex_use_modindex = True
-latex_use_parts = True
+if hasattr(sphinx, 'version_info') and sphinx.version_info[:2] >= (1, 4):
+ latex_toplevel_sectioning = 'part'
+else:
+ latex_use_parts = True
# Show both class-level docstring and __init__ docstring in class
# documentation
diff --git a/doc/faq/howto_faq.rst b/doc/faq/howto_faq.rst
index ab548d9..4e7ea7f 100644
--- a/doc/faq/howto_faq.rst
+++ b/doc/faq/howto_faq.rst
@@ -596,8 +596,7 @@ matplotlib is documented using the `sphinx
extensible python framework for documentation projects which generates
HTML and PDF, and is pretty easy to write; you can see the source for this
document or any page on this site by clicking on the *Show Source* link
-at the end of the page in the sidebar (or `here
-<../_sources/faq/howto_faq.txt>`_ for this document).
+at the end of the page in the sidebar.
The sphinx website is a good resource for learning sphinx, but we have
put together a cheat-sheet at :ref:`documenting-matplotlib` which
diff --git a/doc/mpl_toolkits/axes_grid/figures/simple_axisartist1.py b/doc/mpl_toolkits/axes_grid/figures/simple_axisartist1.py
index 6093ea2..d9a8a69 100644
--- a/doc/mpl_toolkits/axes_grid/figures/simple_axisartist1.py
+++ b/doc/mpl_toolkits/axes_grid/figures/simple_axisartist1.py
@@ -10,7 +10,7 @@ fig.add_subplot(ax)
ax.axis["bottom", "top", "right"].set_visible(False)
# make an new axis along the first axis axis (x-axis) which pass
-# throught y=0.
+# through y=0.
ax.axis["y=0"] = ax.new_floating_axis(nth_coord=0, value=0,
axis_direction="bottom")
ax.axis["y=0"].toggle(all=True)
diff --git a/doc/mpl_toolkits/axes_grid/figures/simple_axisline2.py b/doc/mpl_toolkits/axes_grid/figures/simple_axisline2.py
index 5440aec..9aa59dd 100644
--- a/doc/mpl_toolkits/axes_grid/figures/simple_axisline2.py
+++ b/doc/mpl_toolkits/axes_grid/figures/simple_axisline2.py
@@ -4,7 +4,7 @@ import numpy as np
fig = plt.figure(1, (4,3))
-# a subplot with two additiona axis, "xzero" and "yzero". "xzero" is
+# a subplot with two additional axis, "xzero" and "yzero". "xzero" is
# y=0 line, and "yzero" is x=0 line.
ax = SubplotZero(fig, 1, 1, 1)
fig.add_subplot(ax)
diff --git a/doc/users/dflt_style_changes.rst b/doc/users/dflt_style_changes.rst
index 6e08fa4..125a958 100644
--- a/doc/users/dflt_style_changes.rst
+++ b/doc/users/dflt_style_changes.rst
@@ -426,13 +426,14 @@ obscuring data too much.
fig, (old, new) = plt.subplots(ncols=2, sharey=True)
with plt.style.context('default'):
new.boxplot(data, labels=['A', 'B', 'C', 'D'])
- new.set_title('New boxplots')
+ new.set_title('v2.0')
with plt.style.context('classic'):
old.boxplot(data, labels=['A', 'B', 'C', 'D'])
- old.set_title('Old boxplots')
+ old.set_title('classic')
- new.set_ylim(bottom=0)
+ new.set_yscale('log')
+ old.set_yscale('log')
The previous defaults can be restored by setting::
@@ -551,7 +552,7 @@ default. The default face color is now ``'C0'`` instead of ``'b'``.
The previous defaults can be restored by setting::
mpl.rcParams['patch.force_edgecolor'] = True
- mpl.rcParams['patch.facecolor'] = True
+ mpl.rcParams['patch.facecolor'] = 'b'
or by setting::
@@ -968,6 +969,11 @@ or create a new `~matplotlib.ticker.MaxNLocator`::
import matplotlib.ticker as mticker
ax.set_major_locator(mticker.MaxNLocator(nbins=9, steps=[1, 2, 5, 10])
+The algorithm used by `~matplotlib.ticker.MaxNLocator` has been
+improved, and this may change the choice of tick locations in some
+cases. This also affects `~matplotlib.ticker.AutoLocator`, which
+uses ``MaxNLocator`` internally.
+
For a log-scaled axis the default locator is the
`~matplotlib.ticker.LogLocator`. Previously the maximum number
of ticks was set to 15, and could not be changed. Now there is a
@@ -1042,6 +1048,15 @@ Z-order
``rcParams['axes.axisbelow'] = False``.
+``LogFormatter`` labeling of minor ticks
+========================================
+
+Minor ticks on a log axis are now labeled when the axis view limits
+span a range less than or equal to the interval between two major
+ticks. See `~matplotlib.ticker.LogFormatter` for details. The
+minor tick labeling is turned off when using ``mpl.style.use('classic')``,
+but cannot be controlled independently via ``rcParams``.
+
``ScalarFormatter`` tick label formatting with offsets
======================================================
@@ -1123,10 +1138,3 @@ mplot3d
- grid.color
- grid.linewidth
- grid.linestyle
-
-
-
-TEMPORARY NOTES TOM IS KEEPING IN THE SOURCE SO THEY DO NOT GET LOST
-====================================================================
-
-- lines.color change, only hits raw usage of Line2D
diff --git a/doc/users/github_stats.rst b/doc/users/github_stats.rst
index bfbaf21..a6c6811 100644
--- a/doc/users/github_stats.rst
+++ b/doc/users/github_stats.rst
@@ -1,15 +1,15 @@
.. _github-stats:
-Github Stats
+GitHub Stats
============
-GitHub stats for 2015/10/29 - 2016/12/04 (tag: v1.5.0)
+GitHub stats for 2015/10/29 - 2016/12/18 (tag: v1.5.0)
These lists are automatically generated, and may be incomplete or contain duplicates.
-We closed 776 issues and merged 638 pull requests.
+We closed 809 issues and merged 655 pull requests.
-The following 211 authors contributed 2839 commits.
+The following 219 authors contributed 3010 commits.
* 4over7
* AbdealiJK
@@ -19,7 +19,10 @@ The following 211 authors contributed 2839 commits.
* Alberto
* alcinos
* Alex Rothberg
+* Alexis Bienvenüe
* Ali Uneri
+* Alvaro Sanchez
+* alvarosg
* AndersonDaniel
* Andreas Hilboll
* Andreas Mayer
@@ -39,6 +42,7 @@ The following 211 authors contributed 2839 commits.
* Chen Karako
* Chris Holdgraf
* Christian Stade-Schuldt
+* Christoph Deil
* Christoph Gohlke
* Cimarron Mittelsteadt
* CJ Carey
@@ -46,6 +50,8 @@ The following 211 authors contributed 2839 commits.
* DaCoEx
* Dan Hickstein
* Daniel C. Marcu
+* danielballan
+* Danny Hermes
* David A
* David Kent
* David Stansby
@@ -104,6 +110,7 @@ The following 211 authors contributed 2839 commits.
* Jeffrey Hokanson @ Loki
* Jens Hedegaard Nielsen
* John Vandenberg
+* JojoBoulix
* jonchar
* Joseph Fox-Rabinovitz
* Joseph Jon Booker
@@ -143,6 +150,7 @@ The following 211 authors contributed 2839 commits.
* Mher Kazandjian
* Michael Droettboom
* Michiel de Hoon
+* Mike Henninger
* Mike Jarvis
* MinRK
* mlub
@@ -224,19 +232,36 @@ The following 211 authors contributed 2839 commits.
GitHub issues and pull requests:
-Pull Requests (638):
+Pull Requests (655):
+* :ghpull:`7585`: [MRG+1] Fix a bug in TextBox where shortcut keys were not being reenabled
+* :ghpull:`7628`: picker may not be callable.
+* :ghpull:`7464`: ENH: _StringFuncParser to get numerical functions callables from strings
+* :ghpull:`7622`: Mrg animation merge
+* :ghpull:`7618`: DOC: fixed typo in mlab.py
+* :ghpull:`7596`: Delay fc-list warning by 5s.
+* :ghpull:`7607`: TST: regenerate patheffect2
+* :ghpull:`7608`: Don't call np.min on generator.
+* :ghpull:`7570`: Correctly skip colors for nan points given to scatter
+* :ghpull:`7605`: Make bars stick to explicitly-specified edges.
+* :ghpull:`6597`: Reproducible PS/PDF output (master)
+* :ghpull:`7546`: Deprecate update_datalim_numerix&update_from_data.
+* :ghpull:`7574`: Docs edits
+* :ghpull:`7538`: Don't work out packages to install if user requests information from setup.p
+* :ghpull:`7577`: Spelling fix: corosponding -> corresponding
+* :ghpull:`7536`: Rectangle patch angle attribute and patch __str__ improvements
+* :ghpull:`7547`: Additional cleanups
* :ghpull:`7544`: Cleanups
* :ghpull:`7548`: Clarify to_rgba docstring.
* :ghpull:`7476`: Sticky margins
* :ghpull:`7552`: Correctly extend a lognormed colorbar
-* :ghpull:`7499`: [MRG] Improve the the marker table in markers_api documentation
+* :ghpull:`7499`: Improve the the marker table in markers_api documentation
* :ghpull:`7468`: TST: Enable pytest-xdist
* :ghpull:`7530`: MAINT: TkAgg default backend depends on tkinter
* :ghpull:`7531`: double tolerance for test_png.py/pngsuite on Windows
* :ghpull:`7533`: FIX chinese character are hard to deal with in latex
* :ghpull:`7525`: Avoid division by zero if headlength=0 for quiver
-* :ghpull:`7522`: [MRG+1] Check at least one argument is provided for plt.table
+* :ghpull:`7522`: Check at least one argument is provided for plt.table
* :ghpull:`7520`: Fix table.py bug
* :ghpull:`7397`: Numpydoc for backends
* :ghpull:`7513`: Doc: Typo in gridspec example subtitle
@@ -282,11 +307,11 @@ Pull Requests (638):
* :ghpull:`7386`: ENH examples are now reproducible
* :ghpull:`7395`: Drop code that supports numpy pre-1.6.
* :ghpull:`7385`: [MRG+1] remove unused random import
-* :ghpull:`7236`: [MRG+1] ENH Improving the contribution guidelines
+* :ghpull:`7236`: ENH Improving the contribution guidelines
* :ghpull:`7370`: [MRG+1] Add example use of axes.spines.SIDE prop in matplotlibrc
-* :ghpull:`7367`: [MRG+1] Warn on invalid log axis limits, per issue #7299
+* :ghpull:`7367`: Warn on invalid log axis limits, per issue #7299
* :ghpull:`7360`: Updated violin plot example as per suggestions in issue #7251
-* :ghpull:`7357`: [mrg+1] Added notes on how to use matplotlib in pyenv
+* :ghpull:`7357`: Added notes on how to use matplotlib in pyenv
* :ghpull:`7329`: DOC MEP12 - converted animation to SG/MEP12 compatible
* :ghpull:`7337`: FIX symlog scale now shows negative labels.
* :ghpull:`7354`: fix small error in poly_editor example
@@ -315,12 +340,12 @@ Pull Requests (638):
* :ghpull:`7298`: Changed Examples for Pep8 Compliance
* :ghpull:`7295`: MAINT finance module is deprecated
* :ghpull:`7214`: FIX: Only render single patch for scatter
-* :ghpull:`7297`: [MRG] MAINT docstring appending doesn't mess with rendering anymore.
-* :ghpull:`6907`: [MRG+1] Filled + and x markers
+* :ghpull:`7297`: MAINT docstring appending doesn't mess with rendering anymore.
+* :ghpull:`6907`: Filled + and x markers
* :ghpull:`7288`: Style typos fixes
* :ghpull:`7277`: MEP12 - added sphinx-gallery docstrings
* :ghpull:`7286`: DOC: Fix for #7283 by adding a trailing underscore to misrendered URLs
-* :ghpull:`7285`: [MRG+1] added some fixes to the documentation of the functions
+* :ghpull:`7285`: added some fixes to the documentation of the functions
* :ghpull:`6690`: Tidying up and tweaking mplot3d examples [MEP12]
* :ghpull:`7273`: Fix image watermark example where image was hidden by axes (#7265)
* :ghpull:`7276`: FIX: don't compute flier positions if not showing
@@ -332,7 +357,7 @@ Pull Requests (638):
* :ghpull:`7256`: CI: skip failing test on appveyor
* :ghpull:`7255`: CI: pin to qt4
* :ghpull:`7229`: DOC: instructions on installing matplotlib for dev
-* :ghpull:`7252`: [MRG+2] ENH: improve PySide2 loading
+* :ghpull:`7252`: ENH: improve PySide2 loading
* :ghpull:`7245`: TST: Always produce image comparison test result images
* :ghpull:`6677`: Remove a copy in pcolormesh.
* :ghpull:`6814`: Customize violin plot demo, see #6723
@@ -359,12 +384,12 @@ Pull Requests (638):
* :ghpull:`7019`: Check for fontproperties in figure.suptitle.
* :ghpull:`7145`: Add ``style`` to api doc; fix capitalization.
* :ghpull:`7097`: ``image_comparison`` decorator refactor
-* :ghpull:`7096`: [MRG] DOC refer to plot in the scatter plot doc
+* :ghpull:`7096`: DOC refer to plot in the scatter plot doc
* :ghpull:`7140`: FIX added matplotlib.testing.nose.plugins to setupext.py
* :ghpull:`5112`: OffsetImage: use dpi_cor in get_extent
* :ghpull:`7136`: DOC: minor fix in development_workflow.rst
* :ghpull:`7137`: DOC: improve engineering formatter example
-* :ghpull:`7131`: Fix branch name in "Deleting a branch on GitHub\_" section
+* :ghpull:`7131`: Fix branch name in "Deleting a branch on GitHub" section
* :ghpull:`6521`: Issue #6429 fix
* :ghpull:`7111`: [DOC] Fix example following comments in issue #6865
* :ghpull:`7118`: PR # 7038 rebased (DOC specgram() documentation now in numpy style)
@@ -383,7 +408,7 @@ Pull Requests (638):
* :ghpull:`7077`: label_outer() should remove inner minor ticks too.
* :ghpull:`7037`: DOC change axhspan to numpydoc format
* :ghpull:`7047`: DOC - SpanSelector widget documentation
-* :ghpull:`7049`: [MRG] Documentated dependencies to the doc and remove unecessary dependencies.
+* :ghpull:`7049`: Documentated dependencies to the doc and remove unecessary dependencies.
* :ghpull:`7063`: Tweek tol for test_hist_steplog to fix tests on appveyor
* :ghpull:`7055`: FIX: testings.nose was not installed
* :ghpull:`7058`: Minor animation fixes
@@ -546,7 +571,7 @@ Pull Requests (638):
* :ghpull:`6472`: Install all dependencies from pypi
* :ghpull:`6482`: Skip test broken with numpy 1.11
* :ghpull:`6475`: Do not turn on interactive mode on in example script
-* :ghpull:`6442`: MRG: loading TCL / Tk symbols dynamically
+* :ghpull:`6442`: loading TCL / Tk symbols dynamically
* :ghpull:`6467`: ENH: add unified seaborn style sheet
* :ghpull:`6465`: updated boxplot figure
* :ghpull:`6462`: CI: Use Miniconda already installed on AppVeyor.
@@ -865,8 +890,42 @@ Pull Requests (638):
* :ghpull:`5357`: Fixed typo
* :ghpull:`4920`: ENH: Add TransformedPatchPath for clipping.
-Issues (776):
+Issues (809):
+* :ghissue:`7637`: Stacked 2D plots with interconnections in Matplotlib
+* :ghissue:`7353`: auto legend position changes upon saving the figure
+* :ghissue:`7626`: Saturation mask for imshow()
+* :ghissue:`7623`: potential bug with plt.arrow and plt.annotate when setting linestyle via tuples
+* :ghissue:`7005`: rcParams['font.size'] is consulted at render time
+* :ghissue:`7587`: BUG: shared log axes lose _minpos and revert to default
+* :ghissue:`7493`: Plotting zero values with logarithmic axes triggers OverflowError, Matplotlib hangs permanently
+* :ghissue:`7595`: math domain error using symlog norm
+* :ghissue:`7588`: 2.0.0rc1 cannot import name '_macosx'
+* :ghissue:`2051`: Consider making default verticalalignment ``baseline``
+* :ghissue:`4867`: Add additional minor labels in log axis with a span less than two decades
+* :ghissue:`7489`: Too small axis arrow when savefig to png
+* :ghissue:`7611`: UnicodeDecodeError when using matplotlib save SVG file and open it again
+* :ghissue:`7592`: font cache: a possibility to disable building it
+* :ghissue:`5836`: Repeated warning about fc-list
+* :ghissue:`7609`: The best channel to ask questions related to using matplotlib
+* :ghissue:`7141`: Feature request: auto locate minor ticks on log scaled color bar
+* :ghissue:`3489`: matplotlib scatter shifts color codes when NaN is present
+* :ghissue:`4414`: Specifying histtype='stepfilled' and normed=True when using plt.hist causes ymax to be set incorrectly
+* :ghissue:`7597`: python complain about "This application failed to start because it could not find or load the Qt platform plugin 'xcb' " after an update of matplotlib
+* :ghissue:`7578`: Validate steps input to ``MaxNLocator``
+* :ghissue:`7590`: Subtick labels are not disabled in classic style
+* :ghissue:`6317`: PDF file generation is not deterministic - results in different outputs on the same input
+* :ghissue:`6543`: Why does fill_betweenx not have interpolate?
+* :ghissue:`7437`: Broken path to example with strpdate2num
+* :ghissue:`7593`: Issue: Applying Axis Limits
+* :ghissue:`7591`: Number of subplots in mpl.axes.Subplot object
+* :ghissue:`7056`: setup.py --name and friends broken
+* :ghissue:`7044`: location of convert in rcparams on windows
+* :ghissue:`6813`: avoid hiding edge pixels of images
+* :ghissue:`7579`: OS X libpng incompatability
+* :ghissue:`7576`: v2.0.0rc1 conda-forge dependency issue
+* :ghissue:`7558`: Colorbar becomes 0 to 1 after colorbar ax.yaxis.set_major_formatter
+* :ghissue:`7526`: Cannot Disable TkAgg Backend
* :ghissue:`6565`: Questionable margin-cancellation logic
* :ghissue:`7175`: new margin system doesn't handle negative values in bars
* :ghissue:`5201`: issue with colorbar using LogNorm and extend='min'
@@ -898,8 +957,8 @@ Issues (776):
* :ghissue:`7478`: 'alpha' kwarg overrides facecolor='none' when plotting circle
* :ghissue:`7375`: Patch edgecolor of a legend item does not follow look of figure
* :ghissue:`6873`: examples/api/skewt.py is not displaying the right part of the grid by default
-* :ghissue:`7350`: Colors drawn outside axis for hist2d
* :ghissue:`6773`: Shifted image extents in 2.0.0.b3
+* :ghissue:`7350`: Colors drawn outside axis for hist2d
* :ghissue:`7485`: Is there a way to subclass the zoom() function from the NavigationToolbar backends and modify its mouse button definition?
* :ghissue:`7396`: Bump numpy minimal version to 1.7.0?
* :ghissue:`7466`: missing trigger for autoscale
@@ -910,7 +969,6 @@ Issues (776):
* :ghissue:`5076`: RuntimeError: LaTeX was not able to process the following string: 'z=$\\\\mathregular{{}^{}_{\\\\}}$' in matplotlib
* :ghissue:`7450`: Using Matplotlib in Abaqus
* :ghissue:`7314`: Better error message in scatter plot when len(x) != len(c)
-* :ghissue:`7341`: slightly imprecise tick positioning
* :ghissue:`7432`: Failure to re-render after Line2D.set_color
* :ghissue:`6695`: support markdown or similar
* :ghissue:`6228`: Rasterizing patch changes filling of hatches in pdf backend
@@ -944,9 +1002,9 @@ Issues (776):
* :ghissue:`7391`: How to apply ax.margins to current axes limits?
* :ghissue:`7234`: Improving documentation: Tests failing on a osx setup
* :ghissue:`7379`: Mp4's generated by movie writer do not appear work in browser
-* :ghissue:`6926`: SVG backend closes BytesIO on print if were ``usetex=True`` and ``cleanup`` decorator used
* :ghissue:`6870`: Figure is unpicklable after ``savefig``
* :ghissue:`6181`: When using Agg driver, pickling fails with TypeError after writing figure to PDF
+* :ghissue:`6926`: SVG backend closes BytesIO on print if were ``usetex=True`` and ``cleanup`` decorator used
* :ghissue:`3899`: Pickle not working in interactive ipython session
* :ghissue:`7251`: Improve violin plot demo
* :ghissue:`7146`: symlog scale no longer shows labels on the negative side
@@ -1042,8 +1100,8 @@ Issues (776):
* :ghissue:`3645`: Proposal: Add rc setting to control dash spacing
* :ghissue:`7009`: No good way to disable SpanSelector
* :ghissue:`7040`: It is getting increasingly difficult to build the matplotlib documentation
-* :ghissue:`6965`: ArtistAnimation cannot animate Figure-only artists
* :ghissue:`6964`: Docstring for ArtistAnimation is incorrect
+* :ghissue:`6965`: ArtistAnimation cannot animate Figure-only artists
* :ghissue:`7062`: remove the contour on a Basemap object
* :ghissue:`7061`: remove the contour on Basemap
* :ghissue:`7054`: Whether the new version 2.0 will support high-definition screen?
diff --git a/doc/users/plotting/examples/custom_boxstyle02.py b/doc/users/plotting/examples/custom_boxstyle02.py
index 96933cb..bd6616c 100644
--- a/doc/users/plotting/examples/custom_boxstyle02.py
+++ b/doc/users/plotting/examples/custom_boxstyle02.py
@@ -3,7 +3,7 @@ from matplotlib.patches import BoxStyle
import matplotlib.pyplot as plt
# we may derive from matplotlib.patches.BoxStyle._Base class.
-# You need to overide transmute method in this case.
+# You need to override transmute method in this case.
class MyStyle(BoxStyle._Base):
"""
diff --git a/doc/users/whats_new.rst b/doc/users/whats_new.rst
index 62ee469..2f4a04f 100644
--- a/doc/users/whats_new.rst
+++ b/doc/users/whats_new.rst
@@ -53,7 +53,7 @@ New rcparams added
+---------------------------------+--------------------------------------------------+
| Parameter | Description |
+=================================+==================================================+
-|`date.autoformatter.year` | foramt string for 'year' scale dates |
+|`date.autoformatter.year` | format string for 'year' scale dates |
+---------------------------------+--------------------------------------------------+
|`date.autoformatter.month` | format string for 'month' scale dates |
+---------------------------------+--------------------------------------------------+
@@ -73,7 +73,7 @@ New rcparams added
+---------------------------------+--------------------------------------------------+
|`xtick.top`, `xtick.minor.top`, | Control where major and minor ticks are drawn. |
|`xtick.major.top` | The global values are `and` ed with the |
-|`xtick.bottom`, | corosponding major/minor values. |
+|`xtick.bottom`, | corresponding major/minor values. |
|`xtick.minor.bottom`, | |
|`xtick.major.bottom` | |
|`ytick.left`, `ytick.minor.left`,| |
diff --git a/doc/users/whats_new/plot_surface.rst b/doc/users/whats_new/plot_surface.rst
new file mode 100644
index 0000000..6926e73
--- /dev/null
+++ b/doc/users/whats_new/plot_surface.rst
@@ -0,0 +1,15 @@
+`rcount` and `ccount` for `plot_surface()`
+------------------------------------------
+
+As of v2.0, mplot3d's :func:`~mpl_toolkits.mplot3d.axes3d.plot_surface` now
+accepts `rcount` and `ccount` arguments for controlling the sampling of the
+input data for plotting. These arguments specify the maximum number of
+evenly spaced samples to take from the input data. These arguments are
+also the new default sampling method for the function, and is
+considered a style change.
+
+The old `rstride` and `cstride` arguments, which specified the size of the
+evenly spaced samples, become the default when 'classic' mode is invoked,
+and are still available for use. There are no plans for deprecating these
+arguments.
+
diff --git a/examples/api/barchart_demo.py b/examples/api/barchart_demo.py
... 3762 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/matplotlib.git
More information about the Python-modules-commits
mailing list