You can subscribe to this list here.
2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(115) |
Aug
(120) |
Sep
(137) |
Oct
(170) |
Nov
(461) |
Dec
(263) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(120) |
Feb
(74) |
Mar
(35) |
Apr
(74) |
May
(245) |
Jun
(356) |
Jul
(240) |
Aug
(115) |
Sep
(78) |
Oct
(225) |
Nov
(98) |
Dec
(271) |
2009 |
Jan
(132) |
Feb
(84) |
Mar
(74) |
Apr
(56) |
May
(90) |
Jun
(79) |
Jul
(83) |
Aug
(296) |
Sep
(214) |
Oct
(76) |
Nov
(82) |
Dec
(66) |
2010 |
Jan
(46) |
Feb
(58) |
Mar
(51) |
Apr
(77) |
May
(58) |
Jun
(126) |
Jul
(128) |
Aug
(64) |
Sep
(50) |
Oct
(44) |
Nov
(48) |
Dec
(54) |
2011 |
Jan
(68) |
Feb
(52) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
|
|
|
|
1
(2) |
2
(2) |
3
(2) |
4
|
5
(2) |
6
(4) |
7
|
8
|
9
|
10
|
11
|
12
|
13
(1) |
14
(2) |
15
(3) |
16
(7) |
17
(1) |
18
(1) |
19
(3) |
20
(16) |
21
(3) |
22
(4) |
23
(2) |
24
|
25
|
26
(6) |
27
(3) |
28
(9) |
29
(2) |
30
(2) |
|
Revision: 8291 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8291&view=rev Author: mdboom Date: 2010年04月30日 16:54:10 +0000 (2010年4月30日) Log Message: ----------- Leave in some extra debugging information related to fonts. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/font_manager.py trunk/matplotlib/lib/matplotlib/mathtext.py Modified: trunk/matplotlib/lib/matplotlib/font_manager.py =================================================================== --- trunk/matplotlib/lib/matplotlib/font_manager.py 2010年04月30日 14:41:40 UTC (rev 8290) +++ trunk/matplotlib/lib/matplotlib/font_manager.py 2010年04月30日 16:54:10 UTC (rev 8291) @@ -397,6 +397,11 @@ except ValueError: self.size = size + def __repr__(self): + return "<Font '%s' (%s) %s %s %s %s>" % ( + self.name, os.path.basename(self.fname), self.style, self.variant, + self.weight, self.stretch) + def ttfFontProperty(font): """ Modified: trunk/matplotlib/lib/matplotlib/mathtext.py =================================================================== --- trunk/matplotlib/lib/matplotlib/mathtext.py 2010年04月30日 14:41:40 UTC (rev 8290) +++ trunk/matplotlib/lib/matplotlib/mathtext.py 2010年04月30日 16:54:10 UTC (rev 8291) @@ -849,11 +849,11 @@ fontname, uniindex = self._map_virtual_font( fontname, font_class, uniindex) + new_fontname = fontname + # Only characters in the "Letter" class should be italicized in 'it' # mode. Greek capital letters should be Roman. if found_symbol: - new_fontname = fontname - if fontname == 'it': if uniindex < 0x10000: unistring = unichr(uniindex) @@ -883,8 +883,8 @@ else: if fontname in ('it', 'regular') and isinstance(self, StixFonts): return self._get_glyph('rm', font_class, sym, fontsize) - warn("Font '%s' does not have a glyph for '%s'" % - (fontname, sym.encode('ascii', 'backslashreplace')), + warn("Font '%s' does not have a glyph for '%s' [U%x]" % + (new_fontname, sym.encode('ascii', 'backslashreplace'), uniindex), MathTextWarning) warn("Substituting with a dummy symbol.", MathTextWarning) fontname = 'rm' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8290 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8290&view=rev Author: mdboom Date: 2010年04月30日 14:41:40 +0000 (2010年4月30日) Log Message: ----------- Use case-insensitive matching for font names in family set lists (rcParams font.serif, font.sans-serif etc.) Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/font_manager.py Modified: trunk/matplotlib/lib/matplotlib/font_manager.py =================================================================== --- trunk/matplotlib/lib/matplotlib/font_manager.py 2010年04月29日 21:43:53 UTC (rev 8289) +++ trunk/matplotlib/lib/matplotlib/font_manager.py 2010年04月30日 14:41:40 UTC (rev 8290) @@ -1056,15 +1056,18 @@ No match will return 1.0. """ + family2 = family2.lower() for i, family1 in enumerate(families): - if family1.lower() in font_family_aliases: + family1 = family1.lower() + if family1 in font_family_aliases: if family1 == 'sans': family1 == 'sans-serif' options = rcParams['font.' + family1] + options = [x.lower() for x in options] if family2 in options: idx = options.index(family2) return 0.1 * (float(idx) / len(options)) - elif family1.lower() == family2.lower(): + elif family1 == family2: return 0.0 return 1.0 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8289 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8289&view=rev Author: efiring Date: 2010年04月29日 21:43:53 +0000 (2010年4月29日) Log Message: ----------- Line2D: don't use subslices with markevery Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/lines.py Modified: trunk/matplotlib/lib/matplotlib/lines.py =================================================================== --- trunk/matplotlib/lib/matplotlib/lines.py 2010年04月29日 16:18:09 UTC (rev 8288) +++ trunk/matplotlib/lib/matplotlib/lines.py 2010年04月29日 21:43:53 UTC (rev 8289) @@ -456,7 +456,8 @@ self._subslice = False if (self.axes and len(x) > 100 and self._is_sorted(x) and self.axes.name == 'rectilinear' and - self.axes.get_xscale() == 'linear'): + self.axes.get_xscale() == 'linear' and + self._markevery is None): self._subslice = True if hasattr(self, '_path'): interpolation_steps = self._path._interpolation_steps This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8288 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8288&view=rev Author: mdboom Date: 2010年04月29日 16:18:09 +0000 (2010年4月29日) Log Message: ----------- Fix bug with legends on non-linear scales. Reported by Shrividya Ravi. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/path.py trunk/matplotlib/lib/matplotlib/transforms.py Modified: trunk/matplotlib/lib/matplotlib/path.py =================================================================== --- trunk/matplotlib/lib/matplotlib/path.py 2010年04月28日 20:59:13 UTC (rev 8287) +++ trunk/matplotlib/lib/matplotlib/path.py 2010年04月29日 16:18:09 UTC (rev 8288) @@ -292,9 +292,13 @@ control points appropriately. """ from transforms import Bbox + path = self if transform is not None: transform = transform.frozen() - return Bbox(get_path_extents(self, transform)) + if not transform.is_affine: + path = self.transformed(transform) + transform = None + return Bbox(get_path_extents(path, transform)) def intersects_path(self, other, filled=True): """ @@ -506,8 +510,8 @@ def unit_circle_righthalf(cls): """ (staticmethod) Returns a :class:`Path` of the right half - of a unit circle. The circle is approximated using cubic Bezier - curves. This uses 4 splines around the circle using the approach + of a unit circle. The circle is approximated using cubic Bezier + curves. This uses 4 splines around the circle using the approach presented here: Lancaster, Don. `Approximating a Circle or an Ellipse Using Four @@ -536,7 +540,7 @@ [SQRTHALF-MAGIC45, SQRTHALF+MAGIC45], [MAGIC, 1.0], [0.0, 1.0], - + [0.0, -1.0]], np.float_) Modified: trunk/matplotlib/lib/matplotlib/transforms.py =================================================================== --- trunk/matplotlib/lib/matplotlib/transforms.py 2010年04月28日 20:59:13 UTC (rev 8287) +++ trunk/matplotlib/lib/matplotlib/transforms.py 2010年04月29日 16:18:09 UTC (rev 8288) @@ -1066,7 +1066,7 @@ """ Used by C/C++ -based backends to get at the array matrix data. """ - return self.frozen().__array__() + raise NotImplementedError def transform(self, values): """ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8287 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8287&view=rev Author: efiring Date: 2010年04月28日 20:59:13 +0000 (2010年4月28日) Log Message: ----------- colorbar: set dividers to None in obsolete update_bruteforce Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/colorbar.py Modified: trunk/matplotlib/lib/matplotlib/colorbar.py =================================================================== --- trunk/matplotlib/lib/matplotlib/colorbar.py 2010年04月28日 20:49:48 UTC (rev 8286) +++ trunk/matplotlib/lib/matplotlib/colorbar.py 2010年04月28日 20:59:13 UTC (rev 8287) @@ -779,6 +779,7 @@ self.patch = None self.solids = None self.lines = None + self.dividers = None self.set_alpha(mappable.get_alpha()) self.cmap = mappable.cmap self.norm = mappable.norm This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8286 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8286&view=rev Author: efiring Date: 2010年04月28日 20:49:48 +0000 (2010年4月28日) Log Message: ----------- colorbar: close 2986719 with small fixups and docstring expansion Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/colorbar.py Modified: trunk/matplotlib/lib/matplotlib/colorbar.py =================================================================== --- trunk/matplotlib/lib/matplotlib/colorbar.py 2010年04月28日 19:50:39 UTC (rev 8285) +++ trunk/matplotlib/lib/matplotlib/colorbar.py 2010年04月28日 20:49:48 UTC (rev 8286) @@ -160,8 +160,9 @@ Draw a colorbar in an existing axes. This is a base class for the :class:`Colorbar` class, which is the - basis for the :func:`~matplotlib.pyplot.colorbar` method and pylab - function. + basis for the :func:`~matplotlib.pyplot.colorbar` function and the + :meth:`~matplotlib.figure.Figure.colorbar` method, which are the + usual ways of creating a colorbar. It is also useful by itself for showing a colormap. If the *cmap* kwarg is given but *boundaries* and *values* are left as None, @@ -411,6 +412,9 @@ if self.solids is not None: self.solids.remove() self.solids = col + if self.dividers is not None: + self.dividers.remove() + self.dividers = None if self.drawedges: self.dividers = collections.LineCollection(self._edges(X,Y), colors=(mpl.rcParams['axes.edgecolor'],), @@ -684,6 +688,17 @@ self.alpha = alpha class Colorbar(ColorbarBase): + """ + This class connects a :class:`ColorbarBase` to a + :class:`~matplotlib.cm.ScalarMappable` such as a + :class:`~matplotlib.image.AxesImage` generated via + :meth:`~matplotlib.axes.Axes.imshow`. + + It is not intended to be instantiated directly; instead, + use :meth:`~matplotlib.figure.Figure.colorbar` or + :func:`~matplotlib.pyplot.colorbar` to make your colorbar. + + """ def __init__(self, ax, mappable, **kw): mappable.autoscale_None() # Ensure mappable.norm.vmin, vmax # are set when colorbar is called, @@ -747,20 +762,28 @@ def update_bruteforce(self, mappable): ''' - Manually change any contour line colors. This is called - when the image or contour plot to which this colorbar belongs - is changed. + Destroy and rebuild the colorbar. This is + intended to become obsolete, and will probably be + deprecated and then removed. It is not called when + the pyplot.colorbar function or the Figure.colorbar + method are used to create the colorbar. + ''' # We are using an ugly brute-force method: clearing and # redrawing the whole thing. The problem is that if any # properties have been changed by methods other than the # colorbar methods, those changes will be lost. self.ax.cla() + # clearing the axes will delete outline, patch, solids, and lines: + self.outline = None + self.patch = None + self.solids = None + self.lines = None + self.set_alpha(mappable.get_alpha()) + self.cmap = mappable.cmap + self.norm = mappable.norm self.config_axis() self.draw_all() - #if self.vmin != self.norm.vmin or self.vmax != self.norm.vmax: - # self.ax.cla() - # self.draw_all() if isinstance(self.mappable, contour.ContourSet): CS = self.mappable if not CS.filled: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8285 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8285&view=rev Author: mdboom Date: 2010年04月28日 19:50:39 +0000 (2010年4月28日) Log Message: ----------- Remove extraneous debug print. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/text.py Modified: trunk/matplotlib/lib/matplotlib/text.py =================================================================== --- trunk/matplotlib/lib/matplotlib/text.py 2010年04月28日 19:50:11 UTC (rev 8284) +++ trunk/matplotlib/lib/matplotlib/text.py 2010年04月28日 19:50:39 UTC (rev 8285) @@ -1942,7 +1942,6 @@ if self._bbox_patch: posx, posy = self._x, self._y - print posx, posy x_box, y_box, w_box, h_box = _get_textbox(self, renderer) self._bbox_patch.set_bounds(0., 0., This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8284 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8284&view=rev Author: mdboom Date: 2010年04月28日 19:50:11 +0000 (2010年4月28日) Log Message: ----------- Fix docstring formatting. Modified Paths: -------------- trunk/matplotlib/doc/mpl_toolkits/axes_grid/api/axis_artist_api.rst trunk/matplotlib/lib/matplotlib/axes.py trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py Modified: trunk/matplotlib/doc/mpl_toolkits/axes_grid/api/axis_artist_api.rst =================================================================== --- trunk/matplotlib/doc/mpl_toolkits/axes_grid/api/axis_artist_api.rst 2010年04月28日 19:44:47 UTC (rev 8283) +++ trunk/matplotlib/doc/mpl_toolkits/axes_grid/api/axis_artist_api.rst 2010年04月28日 19:50:11 UTC (rev 8284) @@ -1,6 +1,6 @@ :mod:`mpl_toolkits.axes_grid.axis_artist` -======================================= +========================================= .. autoclass:: mpl_toolkits.axes_grid.axis_artist.AxisArtist :members: Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2010年04月28日 19:44:47 UTC (rev 8283) +++ trunk/matplotlib/lib/matplotlib/axes.py 2010年04月28日 19:50:11 UTC (rev 8284) @@ -1975,9 +1975,9 @@ Optional keyword arguments: - ============ ===================================== + ============ ========================================= Keyword Description - ============ ===================================== + ============ ========================================= *style* [ 'sci' (or 'scientific') | 'plain' ] plain turns off scientific notation *scilimits* (m, n), pair of integers; if *style* @@ -1991,7 +1991,7 @@ numeric offset is specified, it will be used. *axis* [ 'x' | 'y' | 'both' ] - ============ ===================================== + ============ ========================================= Only the major ticks are affected. If the method is called when the Modified: trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py =================================================================== --- trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py 2010年04月28日 19:44:47 UTC (rev 8283) +++ trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py 2010年04月28日 19:50:11 UTC (rev 8284) @@ -52,6 +52,7 @@ ================ ========================================= *azim* Azimuthal viewing angle (default -60) *elev* Elevation viewing angle (default 30) + ================ ========================================= ''' if rect is None: @@ -349,9 +350,9 @@ the axes. Also optionally sets the mouse buttons for 3D rotation and zooming. - ============ ================================================ + ============ ======================================================= Argument Description - ============ ================================================ + ============ ======================================================= *rotate_btn* The integer or list of integers specifying which mouse button or buttons to use for 3D rotation of the axes. Default = 1. @@ -359,7 +360,8 @@ *zoom_btn* The integer or list of integers specifying which mouse button or buttons to use to zoom the 3D axes. Default = 3. - ============ ================================================ + ============ ======================================================= + """ self.button_pressed = None canv = self.figure.canvas @@ -636,22 +638,20 @@ but it also supports color mapping by supplying the *cmap* argument. - ========== ================================================ - Argument Description - ========== ================================================ - *X*, *Y*, Data values as numpy.arrays - *Z* - *rstride* Array row stride (step size) - *cstride* Array column stride (step size) - *color* Color of the surface patches - *cmap* A colormap for the surface patches. - *facecolors* Face colors for the individual patches - *norm* An instance of Normalize to map values to colors - *vmin* Minimum value to map - *vmax* Maximum value to map - *shade* Whether to shade the facecolors, default: - false when cmap specified, true otherwise - ========== ================================================ + ============= ================================================ + Argument Description + ============= ================================================ + *X*, *Y*, *Z* Data values as numpy.arrays + *rstride* Array row stride (step size) + *cstride* Array column stride (step size) + *color* Color of the surface patches + *cmap* A colormap for the surface patches. + *facecolors* Face colors for the individual patches + *norm* An instance of Normalize to map values to colors + *vmin* Minimum value to map + *vmax* Maximum value to map + *shade* Whether to shade the facecolors + ============= ================================================ Other arguments are passed on to :func:`~mpl_toolkits.mplot3d.art3d.Poly3DCollection.__init__` @@ -1083,16 +1083,21 @@ dx, dy, dz can be arrays or scalars. *color* can be: + - A single color value, to color all bars the same color. + - An array of colors of length N bars, to color each bar - independently. - - An array of colors of length 6, to color the faces of the bars - similarly. + independently. + + - An array of colors of length 6, to color the faces of the + bars similarly. + - An array of colors of length 6 * N bars, to color each face - independently. + independently. - When coloring the faces of the boxes specifically, this is the order - of the coloring: + When coloring the faces of the boxes specifically, this is + the order of the coloring: + 1. -Z (bottom of box) 2. +Z (top of box) 3. -Y This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8283 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8283&view=rev Author: efiring Date: 2010年04月28日 19:44:47 +0000 (2010年4月28日) Log Message: ----------- Applied whitespace patch by Mark Roddy; closes 2993733. Modified Paths: -------------- trunk/matplotlib/examples/api/span_regions.py trunk/matplotlib/examples/pylab_examples/usetex_demo.py trunk/matplotlib/lib/matplotlib/backends/backend_cairo.py trunk/matplotlib/lib/matplotlib/backends/backend_tkagg.py trunk/matplotlib/lib/matplotlib/mlab.py trunk/matplotlib/lib/matplotlib/pylab.py trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py trunk/matplotlib/release/win32/data/setupwin.py trunk/matplotlib/release/win32/data/setupwinegg.py Modified: trunk/matplotlib/examples/api/span_regions.py =================================================================== --- trunk/matplotlib/examples/api/span_regions.py 2010年04月28日 19:17:17 UTC (rev 8282) +++ trunk/matplotlib/examples/api/span_regions.py 2010年04月28日 19:44:47 UTC (rev 8283) @@ -21,11 +21,11 @@ ax.axhline(0, color='black', lw=2) collection = collections.BrokenBarHCollection.span_where( - t, ymin=0, ymax=1, where=s1>0, facecolor='green', alpha=0.5) + t, ymin=0, ymax=1, where=s1>0, facecolor='green', alpha=0.5) ax.add_collection(collection) collection = collections.BrokenBarHCollection.span_where( - t, ymin=-1, ymax=0, where=s1<0, facecolor='red', alpha=0.5) + t, ymin=-1, ymax=0, where=s1<0, facecolor='red', alpha=0.5) ax.add_collection(collection) Modified: trunk/matplotlib/examples/pylab_examples/usetex_demo.py =================================================================== --- trunk/matplotlib/examples/pylab_examples/usetex_demo.py 2010年04月28日 19:17:17 UTC (rev 8282) +++ trunk/matplotlib/examples/pylab_examples/usetex_demo.py 2010年04月28日 19:44:47 UTC (rev 8283) @@ -41,8 +41,8 @@ pylab.yticks((0, 0.5, 1), ('0', '.5', '1'), color = 'k', size = 20) ## Right Y-axis labels -pylab.text(1.05, 0.5, r"\bf{level set} $\phi$", {'color' : 'g', 'fontsize' : 20}, - horizontalalignment = 'left', +pylab.text(1.05, 0.5, r"\bf{level set} $\phi$", {'color' : 'g', 'fontsize' : 20}, + horizontalalignment = 'left', verticalalignment = 'center', rotation = 90, clip_on = False) Modified: trunk/matplotlib/lib/matplotlib/backends/backend_cairo.py =================================================================== --- trunk/matplotlib/lib/matplotlib/backends/backend_cairo.py 2010年04月28日 19:17:17 UTC (rev 8282) +++ trunk/matplotlib/lib/matplotlib/backends/backend_cairo.py 2010年04月28日 19:44:47 UTC (rev 8283) @@ -138,8 +138,8 @@ def draw_path(self, gc, path, transform, rgbFace=None): - if len(path.vertices) > 18980: - raise ValueError("The Cairo backend can not draw paths longer than 18980 points.") + if len(path.vertices) > 18980: + raise ValueError("The Cairo backend can not draw paths longer than 18980 points.") ctx = gc.ctx @@ -148,7 +148,7 @@ ctx.new_path() self.convert_path(ctx, path, transform) - + self._fill_and_stroke(ctx, rgbFace, gc.get_alpha()) def draw_image(self, gc, x, y, im): Modified: trunk/matplotlib/lib/matplotlib/backends/backend_tkagg.py =================================================================== --- trunk/matplotlib/lib/matplotlib/backends/backend_tkagg.py 2010年04月28日 19:17:17 UTC (rev 8282) +++ trunk/matplotlib/lib/matplotlib/backends/backend_tkagg.py 2010年04月28日 19:44:47 UTC (rev 8283) @@ -241,7 +241,7 @@ self._resize_callback(event) # compute desired figure size in inches - dpival = self.figure.dpi + dpival = self.figure.dpi winch = width/dpival hinch = height/dpival self.figure.set_size_inches(winch, hinch) Modified: trunk/matplotlib/lib/matplotlib/mlab.py =================================================================== --- trunk/matplotlib/lib/matplotlib/mlab.py 2010年04月28日 19:17:17 UTC (rev 8282) +++ trunk/matplotlib/lib/matplotlib/mlab.py 2010年04月28日 19:44:47 UTC (rev 8283) @@ -2309,11 +2309,11 @@ if needheader: while 1: - # skip past any comments and consume one line of column header - row = reader.next() - if len(row) and row[0].startswith(comments): - continue - break + # skip past any comments and consume one line of column header + row = reader.next() + if len(row) and row[0].startswith(comments): + continue + break # iterate over the remaining rows and convert the data to date # objects, ints, or floats as approriate Modified: trunk/matplotlib/lib/matplotlib/pylab.py =================================================================== --- trunk/matplotlib/lib/matplotlib/pylab.py 2010年04月28日 19:17:17 UTC (rev 8282) +++ trunk/matplotlib/lib/matplotlib/pylab.py 2010年04月28日 19:44:47 UTC (rev 8283) @@ -252,7 +252,7 @@ import numpy.ma as ma def load(*args, **kwargs): - raise NotImplementedError(load.__doc__) + raise NotImplementedError(load.__doc__) load.__doc__ = """\ pylab no longer provides a load function, though the old pylab function is still available as matplotlib.mlab.load (you can refer @@ -265,7 +265,7 @@ def save(*args, **kwargs): - raise NotImplementedError(save.__doc__) + raise NotImplementedError(save.__doc__) save.__doc__ = """\ pylab no longer provides a save function, though the old pylab function is still available as matplotlib.mlab.save (you can still Modified: trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py =================================================================== --- trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py 2010年04月28日 19:17:17 UTC (rev 8282) +++ trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py 2010年04月28日 19:44:47 UTC (rev 8283) @@ -779,7 +779,7 @@ shade = np.array(shade) mask = ~np.isnan(shade) - if len(shade[mask]) > 0: + if len(shade[mask]) > 0: norm = Normalize(min(shade[mask]), max(shade[mask])) if art3d.iscolor(color): color = color.copy() Modified: trunk/matplotlib/release/win32/data/setupwin.py =================================================================== --- trunk/matplotlib/release/win32/data/setupwin.py 2010年04月28日 19:17:17 UTC (rev 8282) +++ trunk/matplotlib/release/win32/data/setupwin.py 2010年04月28日 19:44:47 UTC (rev 8283) @@ -1,12 +1,12 @@ from distutils import cygwinccompiler try: - # Python 2.6 - # Replace the msvcr func to return an [] - cygwinccompiler.get_msvcr - cygwinccompiler.get_msvcr = lambda: [] + # Python 2.6 + # Replace the msvcr func to return an [] + cygwinccompiler.get_msvcr + cygwinccompiler.get_msvcr = lambda: [] except AttributeError: - pass + pass execfile('setup.py') Modified: trunk/matplotlib/release/win32/data/setupwinegg.py =================================================================== --- trunk/matplotlib/release/win32/data/setupwinegg.py 2010年04月28日 19:17:17 UTC (rev 8282) +++ trunk/matplotlib/release/win32/data/setupwinegg.py 2010年04月28日 19:44:47 UTC (rev 8283) @@ -1,13 +1,13 @@ from distutils import cygwinccompiler try: - # Python 2.6 - # Replace the msvcr func to return an empty list - cygwinccompiler.get_msvcr - cygwinccompiler.get_msvcr = lambda: [] + # Python 2.6 + # Replace the msvcr func to return an empty list + cygwinccompiler.get_msvcr + cygwinccompiler.get_msvcr = lambda: [] except AttributeError: - pass + pass from setuptools import setup execfile('setup.py', This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8282 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8282&view=rev Author: efiring Date: 2010年04月28日 19:17:17 +0000 (2010年4月28日) Log Message: ----------- savefig: make the "transparent" kwarg work as advertised Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/backend_bases.py trunk/matplotlib/lib/matplotlib/figure.py Modified: trunk/matplotlib/lib/matplotlib/backend_bases.py =================================================================== --- trunk/matplotlib/lib/matplotlib/backend_bases.py 2010年04月28日 18:14:06 UTC (rev 8281) +++ trunk/matplotlib/lib/matplotlib/backend_bases.py 2010年04月28日 19:17:17 UTC (rev 8282) @@ -868,7 +868,7 @@ Backends need to implement a few specific methods in order to use their own timing mechanisms so that the timer events are integrated into their event loops. - + Mandatory functions that must be implemented: * _timer_start: Contains backend-specific code for starting the timer * _timer_stop: Contains backend-specific code for stopping the timer @@ -883,7 +883,7 @@ * _on_timer: This is the internal function that any timer object should call, which will handle the task of running all callbacks that have been set. - + Attributes: * interval: The time between timer events in milliseconds. Default is 1000 ms. @@ -1938,9 +1938,9 @@ Creates a new backend-specific subclass of :class:`backend_bases.Timer`. This is useful for getting periodic events through the backend's native event loop. Implemented only for backends with GUIs. - + optional arguments: - + *interval* Timer interval in milliseconds *callbacks* Modified: trunk/matplotlib/lib/matplotlib/figure.py =================================================================== --- trunk/matplotlib/lib/matplotlib/figure.py 2010年04月28日 18:14:06 UTC (rev 8281) +++ trunk/matplotlib/lib/matplotlib/figure.py 2010年04月28日 19:17:17 UTC (rev 8282) @@ -1040,8 +1040,10 @@ backend. Most backends support png, pdf, ps, eps and svg. *transparent*: - If *True*, the figure patch and axes patches will all be - transparent. This is useful, for example, for displaying + If *True*, the axes patches will all be transparent; the + figure patch will also be transparent unless facecolor + and/or edgecolor are specified via kwargs. + This is useful, for example, for displaying a plot on top of a colored background on a web page. The transparency of these patches will be restored to their original values upon exit of this function. @@ -1061,9 +1063,7 @@ """ - for key in ('dpi', 'facecolor', 'edgecolor'): - if key not in kwargs: - kwargs[key] = rcParams['savefig.%s'%key] + kwargs.setdefault('dpi', rcParams['savefig.dpi']) extension = rcParams['savefig.extension'] if args and is_string_like(args[0]) and '.' not in args[0] and extension != 'auto': @@ -1072,20 +1072,25 @@ transparent = kwargs.pop('transparent', False) if transparent: - original_figure_alpha = self.patch.get_alpha() - self.patch.set_alpha(0.0) - original_axes_alpha = [] + kwargs.setdefault('facecolor', 'none') + kwargs.setdefault('edgecolor', 'none') + original_axes_colors = [] for ax in self.axes: patch = ax.patch - original_axes_alpha.append(patch.get_alpha()) - patch.set_alpha(0.0) + original_axes_colors.append((patch.get_facecolor(), + patch.get_edgecolor())) + patch.set_facecolor('none') + patch.set_edgecolor('none') + else: + kwargs.setdefault('facecolor', rcParams['savefig.facecolor']) + kwargs.setdefault('edgecolor', rcParams['savefig.edgecolor']) self.canvas.print_figure(*args, **kwargs) if transparent: - self.patch.set_alpha(original_figure_alpha) - for ax, alpha in zip(self.axes, original_axes_alpha): - ax.patch.set_alpha(alpha) + for ax, cc in zip(self.axes, original_axes_colors): + ax.patch.set_facecolor(cc[0]) + ax.patch.set_edgecolor(cc[1]) @docstring.dedent_interpd def colorbar(self, mappable, cax=None, ax=None, **kw): This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8281 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8281&view=rev Author: mdboom Date: 2010年04月28日 18:14:06 +0000 (2010年4月28日) Log Message: ----------- Add interpolation option to fill between so intersections are not broken. Thanks to Joonas Paalasmaa (Bug #2978358) for the report and initial implementation. Modified Paths: -------------- trunk/matplotlib/examples/pylab_examples/fill_between_demo.py trunk/matplotlib/lib/matplotlib/axes.py trunk/matplotlib/lib/matplotlib/pyplot.py trunk/matplotlib/lib/matplotlib/tests/test_axes.py Added Paths: ----------- trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_between_interpolate.pdf trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_between_interpolate.png trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_between_interpolate.svg Modified: trunk/matplotlib/examples/pylab_examples/fill_between_demo.py =================================================================== --- trunk/matplotlib/examples/pylab_examples/fill_between_demo.py 2010年04月28日 15:08:19 UTC (rev 8280) +++ trunk/matplotlib/examples/pylab_examples/fill_between_demo.py 2010年04月28日 18:14:06 UTC (rev 8281) @@ -29,16 +29,16 @@ fig = figure() ax = fig.add_subplot(211) ax.plot(x, y1, x, y2, color='black') -ax.fill_between(x, y1, y2, where=y2>=y1, facecolor='green') -ax.fill_between(x, y1, y2, where=y2<=y1, facecolor='red') +ax.fill_between(x, y1, y2, where=y2>=y1, facecolor='green', interpolate=True) +ax.fill_between(x, y1, y2, where=y2<=y1, facecolor='red', interpolate=True) ax.set_title('fill between where') # Test support for masked arrays. y2 = np.ma.masked_greater(y2, 1.0) ax1 = fig.add_subplot(212, sharex=ax) ax1.plot(x, y1, x, y2, color='black') -ax1.fill_between(x, y1, y2, where=y2>=y1, facecolor='green') -ax1.fill_between(x, y1, y2, where=y2<=y1, facecolor='red') +ax1.fill_between(x, y1, y2, where=y2>=y1, facecolor='green', interpolate=True) +ax1.fill_between(x, y1, y2, where=y2<=y1, facecolor='red', interpolate=True) ax1.set_title('Now regions with y2>1 are masked') # This example illustrates a problem; because of the data Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2010年04月28日 15:08:19 UTC (rev 8280) +++ trunk/matplotlib/lib/matplotlib/axes.py 2010年04月28日 18:14:06 UTC (rev 8281) @@ -6157,7 +6157,8 @@ return patches @docstring.dedent_interpd - def fill_between(self, x, y1, y2=0, where=None, **kwargs): + def fill_between(self, x, y1, y2=0, where=None, interpolate=False, + **kwargs): """ call signature:: @@ -6181,6 +6182,12 @@ it is a a N length numpy boolean array and the fill will only happen over the regions where ``where==True`` + *interpolate* + If True, interpolate between the two lines to find the + precise point of intersection. Otherwise, the start and + end points of the filled region will only occur on explicit + values in the *x* array. + *kwargs* keyword args passed on to the :class:`PolyCollection` @@ -6236,17 +6243,41 @@ N = len(xslice) X = np.zeros((2*N+2, 2), np.float) - # the purpose of the next two lines is for when y2 is a - # scalar like 0 and we want the fill to go all the way - # down to 0 even if none of the y1 sample points do - X[0] = xslice[0], y2slice[0] - X[N+1] = xslice[-1], y2slice[-1] + if interpolate: + def get_interp_point(ind): + x_values = x[ind-1:ind+1] + diff_values = y1[ind-1:ind+1] - y2[ind-1:ind+1] + y1_values = y1[ind-1:ind+1] + if len(diff_values) == 2: + if np.ma.is_masked(diff_values[1]): + return x[ind-1], y1[ind-1] + elif np.ma.is_masked(diff_values[0]): + return x[ind], y1[ind] + + diff_order = diff_values.argsort() + diff_root_x = np.interp( + 0, diff_values[diff_order], x_values[diff_order]) + diff_root_y = np.interp(diff_root_x, x_values, y1_values) + return diff_root_x, diff_root_y + + start = get_interp_point(ind0) + end = get_interp_point(ind1) + else: + # the purpose of the next two lines is for when y2 is a + # scalar like 0 and we want the fill to go all the way + # down to 0 even if none of the y1 sample points do + start = xslice[0], y2slice[0] + end = xslice[-1], y2slice[-1] + + X[0] = start + X[N+1] = end + X[1:N+1,0] = xslice X[1:N+1,1] = y1slice X[N+2:,0] = xslice[::-1] X[N+2:,1] = y2slice[::-1] - + polys.append(X) collection = mcoll.PolyCollection(polys, **kwargs) @@ -6256,7 +6287,6 @@ XY2 = np.array([x[where], y2[where]]).T self.dataLim.update_from_data_xy(XY1, self.ignore_existing_data_limits, updatex=True, updatey=True) - self.dataLim.update_from_data_xy(XY2, self.ignore_existing_data_limits, updatex=False, updatey=True) self.add_collection(collection) Modified: trunk/matplotlib/lib/matplotlib/pyplot.py =================================================================== --- trunk/matplotlib/lib/matplotlib/pyplot.py 2010年04月28日 15:08:19 UTC (rev 8280) +++ trunk/matplotlib/lib/matplotlib/pyplot.py 2010年04月28日 18:14:06 UTC (rev 8281) @@ -2049,7 +2049,7 @@ # This function was autogenerated by boilerplate.py. Do not edit as # changes will be lost @autogen_docstring(Axes.fill_between) -def fill_between(x, y1, y2=0, where=None, hold=None, **kwargs): +def fill_between(x, y1, y2=0, where=None, interpolate=False, hold=None, **kwargs): ax = gca() # allow callers to override the hold state by passing hold=True|False washold = ax.ishold() @@ -2057,7 +2057,7 @@ if hold is not None: ax.hold(hold) try: - ret = ax.fill_between(x, y1, y2, where, **kwargs) + ret = ax.fill_between(x, y1, y2, where, interpolate, **kwargs) draw_if_interactive() finally: ax.hold(washold) Added: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_between_interpolate.pdf =================================================================== (Binary files differ) Property changes on: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_between_interpolate.pdf ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_between_interpolate.png =================================================================== (Binary files differ) Property changes on: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_between_interpolate.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_between_interpolate.svg =================================================================== --- trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_between_interpolate.svg (rev 0) +++ trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_between_interpolate.svg 2010年04月28日 18:14:06 UTC (rev 8281) @@ -0,0 +1,763 @@ +<?xml version="1.0" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" + "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<!-- Created with matplotlib (http://matplotlib.sourceforge.net/) --> +<svg width="576pt" height="432pt" viewBox="0 0 576 432" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + version="1.1" + id="svg1"> +<filter id="colorAdd"><feComposite in="SourceGraphic" in2="BackgroundImage" operator="arithmetic" k2="1" k3="1"/></filter> +<g id="figure1"> +<g id="patch1"> +<path style="fill: #ffffff; stroke: #ffffff; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M0.000000 432.000000L576.000000 432.000000L576.000000 0.000000 +L0.000000 0.000000L0.000000 432.000000"/> +</g> +<g id="axes1"> +<g id="patch2"> +<path style="fill: #ffffff; opacity: 1.000000" d="M72.000000 200.290909L518.400000 200.290909L518.400000 43.200000 +L72.000000 43.200000L72.000000 200.290909"/> +</g> +<g id="PolyCollection1"> +<defs> +<path id="coll0_0_aaf56935a2c13518ed60e01cdc1dee73" d="M72.000000 -310.254545L72.000000 -310.254545L76.464000 -316.817449 +L80.928000 -323.276852L85.392000 -329.530886L89.856000 -335.480920 +L94.320000 -341.033119L98.784000 -346.099921L103.248000 -350.601421 +L107.712000 -354.466626L112.176000 -357.634580L112.508717 -357.815006 +L112.176000 -358.670796L107.712000 -367.110587L103.248000 -371.977904 +L98.784000 -372.966916L94.320000 -370.015479L89.856000 -363.309042 +L85.392000 -353.268996L80.928000 -340.526195L76.464000 -325.881314 +L72.000000 -310.254545z"/> +<path id="coll0_1_a4538251d9ee85a3e02c1608986ad8bb" d="M183.600000 -310.254545L188.064000 -303.691642L192.528000 -297.232239 +L196.992000 -290.978205L201.456000 -285.028171L205.920000 -279.475972 +L210.384000 -274.409170L214.848000 -269.907670L219.312000 -266.042465 +L223.776000 -262.874511L228.240000 -260.453768L232.704000 -258.818413 +L237.168000 -257.994237L241.632000 -257.994237L246.096000 -258.818413 +L250.560000 -260.453768L254.691283 -262.694085L250.560000 -273.320258 +L246.096000 -287.122937L241.632000 -302.379061L237.168000 -318.130030 +L232.704000 -333.386154L228.240000 -347.188833L223.776000 -358.670796 +L219.312000 -367.110587L214.848000 -371.977904L210.384000 -372.966916 +L205.920000 -370.015479L201.456000 -363.309042L196.992000 -353.268996 +L192.528000 -340.526195L188.064000 -325.881314z"/> +<path id="coll0_2_7e1bc78ca422414c858b233668c6bc42" d="M295.200000 -310.254545L299.664000 -316.817449L304.128000 -323.276852 +L308.592000 -329.530886L313.056000 -335.480920L317.520000 -341.033119 +L321.984000 -346.099921L326.448000 -350.601421L330.912000 -354.466626 +L335.376000 -357.634580L335.708717 -357.815006L335.376000 -358.670796 +L330.912000 -367.110587L326.448000 -371.977904L321.984000 -372.966916 +L317.520000 -370.015479L313.056000 -363.309042L308.592000 -353.268996 +L304.128000 -340.526195L299.664000 -325.881314z"/> +<path id="coll0_3_c3b5c2b0e85ad5a4572d45dacb38da0e" d="M406.800000 -310.254545L411.264000 -303.691642L415.728000 -297.232239 +L420.192000 -290.978205L424.656000 -285.028171L429.120000 -279.475972 +L433.584000 -274.409170L438.048000 -269.907670L442.512000 -266.042465 +L446.976000 -262.874511L451.440000 -260.453768L455.904000 -258.818413 +L460.368000 -257.994237L464.832000 -257.994237L469.296000 -258.818413 +L473.760000 -260.453768L477.891283 -262.694085L473.760000 -273.320258 +L469.296000 -287.122937L464.832000 -302.379061L460.368000 -318.130030 +L455.904000 -333.386154L451.440000 -347.188833L446.976000 -358.670796 +L442.512000 -367.110587L438.048000 -371.977904L433.584000 -372.966916 +L429.120000 -370.015479L424.656000 -363.309042L420.192000 -353.268996 +L415.728000 -340.526195L411.264000 -325.881314z"/> +</defs> +<defs> + <clipPath id="pad2bdf97e9fd82d59a5c57b91897f3de"> +<rect x="72.000000" y="43.200000" width="446.400000" height="157.090909"/> + </clipPath> +</defs><g clip-path="url(#pad2bdf97e9fd82d59a5c57b91897f3de)"><use style="fill: #008000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll0_0_aaf56935a2c13518ed60e01cdc1dee73" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pad2bdf97e9fd82d59a5c57b91897f3de)"><use style="fill: #008000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll0_1_a4538251d9ee85a3e02c1608986ad8bb" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pad2bdf97e9fd82d59a5c57b91897f3de)"><use style="fill: #008000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll0_2_7e1bc78ca422414c858b233668c6bc42" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pad2bdf97e9fd82d59a5c57b91897f3de)"><use style="fill: #008000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll0_3_c3b5c2b0e85ad5a4572d45dacb38da0e" x="0.000000" y="432.000000"/> +</g></g> +<g id="PolyCollection2"> +<defs> +<path id="coll1_0_59cf1511b6d916e21dd73a7f3e4d31ec" d="M72.000000 -310.254545L72.000000 -310.254545L72.000000 -310.254545 +L72.000000 -310.254545z"/> +<path id="coll1_1_e39ea564cf8eb3ca5381599ae079b29b" d="M112.508717 -357.815006L116.640000 -360.055323L121.104000 -361.690678 +L125.568000 -362.514854L130.032000 -362.514854L134.496000 -361.690678 +L138.960000 -360.055323L143.424000 -357.634580L147.888000 -354.466626 +L152.352000 -350.601421L156.816000 -346.099921L161.280000 -341.033119 +L165.744000 -335.480920L170.208000 -329.530886L174.672000 -323.276852 +L179.136000 -316.817449L183.600000 -310.254545L183.600000 -310.254545 +L183.600000 -310.254545L179.136000 -294.627777L174.672000 -279.982896 +L170.208000 -267.240095L165.744000 -257.200049L161.280000 -250.493612 +L156.816000 -247.542175L152.352000 -248.531187L147.888000 -253.398504 +L143.424000 -261.838295L138.960000 -273.320258L134.496000 -287.122937 +L130.032000 -302.379061L125.568000 -318.130030L121.104000 -333.386154 +L116.640000 -347.188833z"/> +<path id="coll1_2_0f64580eb1567b0582e386cb71b8b9cd" d="M254.691283 -262.694085L255.024000 -262.874511L259.488000 -266.042465 +L263.952000 -269.907670L268.416000 -274.409170L272.880000 -279.475972 +L277.344000 -285.028171L281.808000 -290.978205L286.272000 -297.232239 +L290.736000 -303.691642L295.200000 -310.254545L295.200000 -310.254545 +L295.200000 -310.254545L290.736000 -294.627777L286.272000 -279.982896 +L281.808000 -267.240095L277.344000 -257.200049L272.880000 -250.493612 +L268.416000 -247.542175L263.952000 -248.531187L259.488000 -253.398504 +L255.024000 -261.838295z"/> +<path id="coll1_3_ca80bd8ff98b9208864e7e898d4b563e" d="M335.708717 -357.815006L339.840000 -360.055323L344.304000 -361.690678 +L348.768000 -362.514854L353.232000 -362.514854L357.696000 -361.690678 +L362.160000 -360.055323L366.624000 -357.634580L371.088000 -354.466626 +L375.552000 -350.601421L380.016000 -346.099921L384.480000 -341.033119 +L388.944000 -335.480920L393.408000 -329.530886L397.872000 -323.276852 +L402.336000 -316.817449L406.800000 -310.254545L406.800000 -310.254545 +L406.800000 -310.254545L402.336000 -294.627777L397.872000 -279.982896 +L393.408000 -267.240095L388.944000 -257.200049L384.480000 -250.493612 +L380.016000 -247.542175L375.552000 -248.531187L371.088000 -253.398504 +L366.624000 -261.838295L362.160000 -273.320258L357.696000 -287.122937 +L353.232000 -302.379061L348.768000 -318.130030L344.304000 -333.386154 +L339.840000 -347.188833z"/> +<path id="coll1_4_c1ff4955e7872f3ca161dc94104c2fad" d="M477.891283 -262.694085L478.224000 -262.874511L482.688000 -266.042465 +L487.152000 -269.907670L491.616000 -274.409170L496.080000 -279.475972 +L500.544000 -285.028171L505.008000 -290.978205L509.472000 -297.232239 +L513.936000 -303.691642L513.936000 -303.691642L513.936000 -294.627777 +L509.472000 -279.982896L505.008000 -267.240095L500.544000 -257.200049 +L496.080000 -250.493612L491.616000 -247.542175L487.152000 -248.531187 +L482.688000 -253.398504L478.224000 -261.838295z"/> +</defs> +<g clip-path="url(#pad2bdf97e9fd82d59a5c57b91897f3de)"><use style="fill: #ff0000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll1_0_59cf1511b6d916e21dd73a7f3e4d31ec" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pad2bdf97e9fd82d59a5c57b91897f3de)"><use style="fill: #ff0000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll1_1_e39ea564cf8eb3ca5381599ae079b29b" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pad2bdf97e9fd82d59a5c57b91897f3de)"><use style="fill: #ff0000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll1_2_0f64580eb1567b0582e386cb71b8b9cd" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pad2bdf97e9fd82d59a5c57b91897f3de)"><use style="fill: #ff0000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll1_3_ca80bd8ff98b9208864e7e898d4b563e" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pad2bdf97e9fd82d59a5c57b91897f3de)"><use style="fill: #ff0000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll1_4_c1ff4955e7872f3ca161dc94104c2fad" x="0.000000" y="432.000000"/> +</g></g> +<g id="line2d1"> +<path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#pad2bdf97e9fd82d59a5c57b91897f3de)" d="M72.000000 121.745455L76.464000 115.182551L80.928000 108.723148 +L85.392000 102.469114L89.856000 96.519080L94.320000 90.966881 +L98.784000 85.900079L103.248000 81.398579L107.712000 77.533374 +L112.176000 74.365420L116.640000 71.944677L121.104000 70.309322 +L125.568000 69.485146L130.032000 69.485146L134.496000 70.309322 +L138.960000 71.944677L143.424000 74.365420L147.888000 77.533374 +L152.352000 81.398579L156.816000 85.900079L161.280000 90.966881 +L165.744000 96.519080L170.208000 102.469114L174.672000 108.723148 +L179.136000 115.182551L183.600000 121.745455L188.064000 128.308358 +L192.528000 134.767761L196.992000 141.021795L201.456000 146.971829 +L205.920000 152.524028L210.384000 157.590830L214.848000 162.092330 +L219.312000 165.957535L223.776000 169.125489L228.240000 171.546232 +L232.704000 173.181587L237.168000 174.005763L241.632000 174.005763 +L246.096000 173.181587L250.560000 171.546232L255.024000 169.125489 +L259.488000 165.957535L263.952000 162.092330L268.416000 157.590830 +L272.880000 152.524028L277.344000 146.971829L281.808000 141.021795 +L286.272000 134.767761L290.736000 128.308358L295.200000 121.745455 +L299.664000 115.182551L304.128000 108.723148L308.592000 102.469114 +L313.056000 96.519080L317.520000 90.966881L321.984000 85.900079 +L326.448000 81.398579L330.912000 77.533374L335.376000 74.365420 +L339.840000 71.944677L344.304000 70.309322L348.768000 69.485146 +L353.232000 69.485146L357.696000 70.309322L362.160000 71.944677 +L366.624000 74.365420L371.088000 77.533374L375.552000 81.398579 +L380.016000 85.900079L384.480000 90.966881L388.944000 96.519080 +L393.408000 102.469114L397.872000 108.723148L402.336000 115.182551 +L406.800000 121.745455L411.264000 128.308358L415.728000 134.767761 +L420.192000 141.021795L424.656000 146.971829L429.120000 152.524028 +L433.584000 157.590830L438.048000 162.092330L442.512000 165.957535 +L446.976000 169.125489L451.440000 171.546232L455.904000 173.181587 +L460.368000 174.005763L464.832000 174.005763L469.296000 173.181587 +L473.760000 171.546232L478.224000 169.125489L482.688000 165.957535 +L487.152000 162.092330L491.616000 157.590830L496.080000 152.524028 +L500.544000 146.971829L505.008000 141.021795L509.472000 134.767761 +L513.936000 128.308358"/> +</g> +<g id="line2d2"> +<path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#pad2bdf97e9fd82d59a5c57b91897f3de)" d="M72.000000 121.745455L76.464000 106.118686L80.928000 91.473805 +L85.392000 78.731004L89.856000 68.690958L94.320000 61.984521 +L98.784000 59.033084L103.248000 60.022096L107.712000 64.889413 +L112.176000 73.329204L116.640000 84.811167L121.104000 98.613846 +L125.568000 113.869970L130.032000 129.620939L134.496000 144.877063 +L138.960000 158.679742L143.424000 170.161705L147.888000 178.601496 +L152.352000 183.468813L156.816000 184.457825L161.280000 181.506388 +L165.744000 174.799951L170.208000 164.759905L174.672000 152.017104 +L179.136000 137.372223L183.600000 121.745455L188.064000 106.118686 +L192.528000 91.473805L196.992000 78.731004L201.456000 68.690958 +L205.920000 61.984521L210.384000 59.033084L214.848000 60.022096 +L219.312000 64.889413L223.776000 73.329204L228.240000 84.811167 +L232.704000 98.613846L237.168000 113.869970L241.632000 129.620939 +L246.096000 144.877063L250.560000 158.679742L255.024000 170.161705 +L259.488000 178.601496L263.952000 183.468813L268.416000 184.457825 +L272.880000 181.506388L277.344000 174.799951L281.808000 164.759905 +L286.272000 152.017104L290.736000 137.372223L295.200000 121.745455 +L299.664000 106.118686L304.128000 91.473805L308.592000 78.731004 +L313.056000 68.690958L317.520000 61.984521L321.984000 59.033084 +L326.448000 60.022096L330.912000 64.889413L335.376000 73.329204 +L339.840000 84.811167L344.304000 98.613846L348.768000 113.869970 +L353.232000 129.620939L357.696000 144.877063L362.160000 158.679742 +L366.624000 170.161705L371.088000 178.601496L375.552000 183.468813 +L380.016000 184.457825L384.480000 181.506388L388.944000 174.799951 +L393.408000 164.759905L397.872000 152.017104L402.336000 137.372223 +L406.800000 121.745455L411.264000 106.118686L415.728000 91.473805 +L420.192000 78.731004L424.656000 68.690958L429.120000 61.984521 +L433.584000 59.033084L438.048000 60.022096L442.512000 64.889413 +L446.976000 73.329204L451.440000 84.811167L455.904000 98.613846 +L460.368000 113.869970L464.832000 129.620939L469.296000 144.877063 +L473.760000 158.679742L478.224000 170.161705L482.688000 178.601496 +L487.152000 183.468813L491.616000 184.457825L496.080000 181.506388 +L500.544000 174.799951L505.008000 164.759905L509.472000 152.017104 +L513.936000 137.372223"/> +</g> +<g id="matplotlib.axis1"> +<g id="xtick1"> +<g id="line2d3"> +<defs><path id="m30e32995789d870ad79a2e54c91cf9c6" d="M0.000000 0.000000L0.000000 -4.000000"/></defs> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="72.000000" y="200.290909"/> +</g></g> +<g id="line2d4"> +<defs><path id="m9281cae24120827b11d5ea8a7ad3e96b" d="M0.000000 0.000000L0.000000 4.000000"/></defs> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="72.000000" y="43.200000"/> +</g></g> +<g id="text1"> +<defs> +<path id="c_7a2040fe3b94fcd41d0a72c84e93b115" d="M31.781250 -66.406250q-7.609375 0.000000 -11.453125 7.500000q-3.828125 7.484375 -3.828125 22.531250q0.000000 14.984375 3.828125 22.484375q3.843750 7.500000 11.453125 7.500000q7.671875 0.000000 11.500000 -7.500000q3.843750 -7.500000 3.843750 -22.484375q0.000000 -15.046875 -3.843750 -22.531250q-3.828125 -7.500000 -11.500000 -7.500000M31.781250 -74.218750q12.265625 0.000000 18.734375 9.703125q6.468750 9.687500 6.468750 28.140625q0.000000 18.406250 -6.468750 28.109375q-6.468750 9.687500 -18.734375 9.687500q-12.250000 0.000000 -18.718750 -9.687500q-6.468750 -9.703125 -6.468750 -28.109375q0.000000 -18.453125 6.468750 -28.140625q6.468750 -9.703125 18.718750 -9.703125"/> +<path id="c_ed3e21196fb739f392806f09ca0594ef" d="M10.687500 -12.406250l10.312500 0.000000l0.000000 12.406250l-10.312500 0.000000z"/> +</defs> +<g style="fill: #000000; opacity: 1.000000" transform="translate(63.250000,213.197159)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/> +</g> +</g> +</g> +<g id="xtick2"> +<g id="line2d5"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="183.600000" y="200.290909"/> +</g></g> +<g id="line2d6"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="183.600000" y="43.200000"/> +</g></g> +<g id="text2"> +<defs> +<path id="c_1260a2df50f305f3db244e29828f968e" d="M10.796875 -72.906250l38.718750 0.000000l0.000000 8.312500l-29.687500 0.000000l0.000000 17.859375q2.140625 -0.734375 4.281250 -1.093750q2.156250 -0.359375 4.312500 -0.359375q12.203125 0.000000 19.328125 6.687500q7.140625 6.687500 7.140625 18.109375q0.000000 11.765625 -7.328125 18.296875q-7.328125 6.515625 -20.656250 6.515625q-4.593750 0.000000 -9.359375 -0.781250q-4.750000 -0.781250 -9.828125 -2.343750l0.000000 -9.921875q4.390625 2.390625 9.078125 3.562500q4.687500 1.171875 9.906250 1.171875q8.453125 0.000000 13.375000 -4.437500q4.937500 -4.437500 4.937500 -12.062500q0.000000 -7.609375 -4.937500 -12.046875q-4.921875 -4.453125 -13.375000 -4.453125q-3.953125 0.000000 -7.890625 0.875000q-3.921875 0.875000 -8.015625 2.734375z"/> +</defs> +<g style="fill: #000000; opacity: 1.000000" transform="translate(174.975000,213.197159)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/> +</g> +</g> +</g> +<g id="xtick3"> +<g id="line2d7"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="295.200000" y="200.290909"/> +</g></g> +<g id="line2d8"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="295.200000" y="43.200000"/> +</g></g> +<g id="text3"> +<defs> +<path id="c_42baa63129a918535c52adb20d687ea7" d="M12.406250 -8.296875l16.109375 0.000000l0.000000 -55.625000l-17.531250 3.515625l0.000000 -8.984375l17.437500 -3.515625l9.859375 0.000000l0.000000 64.609375l16.109375 0.000000l0.000000 8.296875l-41.984375 0.000000z"/> +</defs> +<g style="fill: #000000; opacity: 1.000000" transform="translate(286.707812,213.197159)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/> +</g> +</g> +</g> +<g id="xtick4"> +<g id="line2d9"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="406.800000" y="200.290909"/> +</g></g> +<g id="line2d10"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="406.800000" y="43.200000"/> +</g></g> +<g id="text4"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(398.432812,213.040909)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/> +</g> +</g> +</g> +<g id="xtick5"> +<g id="line2d11"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="518.400000" y="200.290909"/> +</g></g> +<g id="line2d12"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="518.400000" y="43.200000"/> +</g></g> +<g id="text5"> +<defs> +<path id="c_ed3f3ed3ebfbd18bcb9c012009a68ad1" d="M19.187500 -8.296875l34.421875 0.000000l0.000000 8.296875l-46.281250 0.000000l0.000000 -8.296875q5.609375 -5.812500 15.296875 -15.593750q9.703125 -9.796875 12.187500 -12.640625q4.734375 -5.312500 6.609375 -9.000000q1.890625 -3.687500 1.890625 -7.250000q0.000000 -5.812500 -4.078125 -9.468750q-4.078125 -3.671875 -10.625000 -3.671875q-4.640625 0.000000 -9.796875 1.609375q-5.140625 1.609375 -11.000000 4.890625l0.000000 -9.968750q5.953125 -2.390625 11.125000 -3.609375q5.187500 -1.218750 9.484375 -1.218750q11.328125 0.000000 18.062500 5.671875q6.734375 5.656250 6.734375 15.125000q0.000000 4.500000 -1.687500 8.531250q-1.671875 4.015625 -6.125000 9.484375q-1.218750 1.421875 -7.765625 8.187500q-6.531250 6.765625 -18.453125 18.921875"/> +</defs> +<g style="fill: #000000; opacity: 1.000000" transform="translate(509.689062,213.197159)scale(0.120000)"> +<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/> +</g> +</g> +</g> +</g> +<g id="matplotlib.axis2"> +<g id="ytick1"> +<g id="line2d13"> +<defs><path id="m3400efa6b1638b3fea9e19e898273957" d="M0.000000 0.000000L4.000000 0.000000"/></defs> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="200.290909"/> +</g></g> +<g id="line2d14"> +<defs><path id="m20b58b2501143cb5e0a5e8f1ef6f1643" d="M0.000000 0.000000L-4.000000 0.000000"/></defs> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="200.290909"/> +</g></g> +<g id="text6"> +<defs> +<path id="c_6a8d56c819c37117ab4cf023bec22a5a" d="M10.593750 -35.500000l62.593750 0.000000l0.000000 8.296875l-62.593750 0.000000z"/> +</defs> +<g style="fill: #000000; opacity: 1.000000" transform="translate(41.156250,204.579972)scale(0.120000)"> +<use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7" x="83.789062"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="147.412109"/> +<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="179.199219"/> +</g> +</g> +</g> +<g id="ytick2"> +<g id="line2d15"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="174.109091"/> +</g></g> +<g id="line2d16"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="174.109091"/> +</g></g> +<g id="text7"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(40.906250,178.476278)scale(0.120000)"> +<use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7" x="83.789062"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="147.412109"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="179.199219"/> +</g> +</g> +</g> +<g id="ytick3"> +<g id="line2d17"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="147.927273"/> +</g></g> +<g id="line2d18"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="147.927273"/> +</g></g> +<g id="text8"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(41.156250,152.294460)scale(0.120000)"> +<use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="83.789062"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="147.412109"/> +<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="179.199219"/> +</g> +</g> +</g> +<g id="ytick4"> +<g id="line2d19"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="121.745455"/> +</g></g> +<g id="line2d20"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="121.745455"/> +</g></g> +<g id="text9"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(50.500000,126.112642)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/> +</g> +</g> +</g> +<g id="ytick5"> +<g id="line2d21"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="95.563636"/> +</g></g> +<g id="line2d22"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="95.563636"/> +</g></g> +<g id="text10"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(50.750000,99.930824)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/> +</g> +</g> +</g> +<g id="ytick6"> +<g id="line2d23"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="69.381818"/> +</g></g> +<g id="line2d24"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="69.381818"/> +</g></g> +<g id="text11"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(51.015625,73.749006)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/> +</g> +</g> +</g> +<g id="ytick7"> +<g id="line2d25"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="43.200000"/> +</g></g> +<g id="line2d26"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="43.200000"/> +</g></g> +<g id="text12"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(51.265625,47.489062)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/> +</g> +</g> +</g> +</g> +<g id="patch3"> +<path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M72.000000 43.200000L518.400000 43.200000"/> +</g> +<g id="patch4"> +<path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M518.400000 200.290909L518.400000 43.200000"/> +</g> +<g id="patch5"> +<path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M72.000000 200.290909L518.400000 200.290909"/> +</g> +<g id="patch6"> +<path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M72.000000 200.290909L72.000000 43.200000"/> +</g> +</g> +<g id="axes2"> +<g id="patch7"> +<path style="fill: #ffffff; opacity: 1.000000" d="M72.000000 388.800000L518.400000 388.800000L518.400000 231.709091 +L72.000000 231.709091L72.000000 388.800000"/> +</g> +<g id="PolyCollection3"> +<defs> +<path id="coll2_0_46fd974f6d18f5a0a68d531beb577700" d="M72.000000 -137.454545L72.000000 -137.454545L76.464000 -145.330030 +L80.928000 -153.081314L85.392000 -160.586154L85.392000 -160.586154 +L85.392000 -189.071887L80.928000 -173.780524L76.464000 -156.206667 +L72.000000 -137.454545z"/> +<path id="coll2_1_8be4f92688f0eba5fa3fdb87085b7f86" d="M112.176000 -194.310587L112.176000 -194.310587L112.508717 -194.527099 +L112.176000 -195.554046z"/> +<path id="coll2_2_20ec3575585369c6307e012db84037fd" d="M183.600000 -137.454545L188.064000 -129.579061L192.528000 -121.827777 +L196.992000 -114.322937L196.992000 -114.322937L196.992000 -189.071887 +L192.528000 -173.780524L188.064000 -156.206667z"/> +<path id="coll2_3_23b0f9263c46c9ceec1f92c96a9227b4" d="M223.776000 -80.598504L223.776000 -80.598504L228.240000 -77.693612 +L232.704000 -75.731187L237.168000 -74.742175L241.632000 -74.742175 +L246.096000 -75.731187L250.560000 -77.693612L254.691283 -80.381992 +L250.560000 -93.133400L246.096000 -109.696616L241.632000 -128.003964 +L237.168000 -146.905127L232.704000 -165.212475L228.240000 -181.775691 +L223.776000 -195.554046z"/> +<path id="coll2_4_e39c3b124eb232f8f64f9f24c1f7a81b" d="M295.200000 -137.454545L299.664000 -145.330030L304.128000 -153.081314 +L308.592000 -160.586154L308.592000 -160.586154L308.592000 -189.071887 +L304.128000 -173.780524L299.664000 -156.206667z"/> +<path id="coll2_5_a3b93d11f806ad2797c2a4e1c65e9be3" d="M335.376000 -194.310587L335.376000 -194.310587L335.708717 -194.527099 +L335.376000 -195.554046z"/> +<path id="coll2_6_48770cc756a14ea59a12220750586725" d="M406.800000 -137.454545L411.264000 -129.579061L415.728000 -121.827777 +L420.192000 -114.322937L420.192000 -114.322937L420.192000 -189.071887 +L415.728000 -173.780524L411.264000 -156.206667z"/> +<path id="coll2_7_66eac2d1cfb76197e93f61741c9bda26" d="M446.976000 -80.598504L446.976000 -80.598504L451.440000 -77.693612 +L455.904000 -75.731187L460.368000 -74.742175L464.832000 -74.742175 +L469.296000 -75.731187L473.760000 -77.693612L477.891283 -80.381992 +L473.760000 -93.133400L469.296000 -109.696616L464.832000 -128.003964 +L460.368000 -146.905127L455.904000 -165.212475L451.440000 -181.775691 +L446.976000 -195.554046z"/> +</defs> +<defs> + <clipPath id="pdceb94b59b302b6d614f8fc54d3b8e04"> +<rect x="72.000000" y="231.709091" width="446.400000" height="157.090909"/> + </clipPath> +</defs><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #008000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll2_0_46fd974f6d18f5a0a68d531beb577700" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #008000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll2_1_8be4f92688f0eba5fa3fdb87085b7f86" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #008000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll2_2_20ec3575585369c6307e012db84037fd" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #008000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll2_3_23b0f9263c46c9ceec1f92c96a9227b4" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #008000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll2_4_e39c3b124eb232f8f64f9f24c1f7a81b" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #008000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll2_5_a3b93d11f806ad2797c2a4e1c65e9be3" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #008000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll2_6_48770cc756a14ea59a12220750586725" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #008000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll2_7_66eac2d1cfb76197e93f61741c9bda26" x="0.000000" y="432.000000"/> +</g></g> +<g id="PolyCollection4"> +<defs> +<path id="coll3_0_94785b50af4b70a86b59016efebda6fa" d="M72.000000 -137.454545L72.000000 -137.454545L72.000000 -137.454545 +L72.000000 -137.454545z"/> +<path id="coll3_1_b89b074290be78a074730e88a9f8da14" d="M112.508717 -194.527099L116.640000 -197.215479L121.104000 -199.177904 +L125.568000 -200.166916L130.032000 -200.166916L134.496000 -199.177904 +L138.960000 -197.215479L143.424000 -194.310587L147.888000 -190.509042 +L152.352000 -185.870796L156.816000 -180.468996L161.280000 -174.388833 +L165.744000 -167.726195L170.208000 -160.586154L174.672000 -153.081314 +L179.136000 -145.330030L183.600000 -137.454545L183.600000 -137.454545 +L183.600000 -137.454545L179.136000 -118.702424L174.672000 -101.128567 +L170.208000 -85.837204L165.744000 -73.789150L161.280000 -65.741426 +L156.816000 -62.199701L152.352000 -63.386515L147.888000 -69.227295 +L143.424000 -79.355045L138.960000 -93.133400L134.496000 -109.696616 +L130.032000 -128.003964L125.568000 -146.905127L121.104000 -165.212475 +L116.640000 -181.775691z"/> +<path id="coll3_2_300df8223ffbe600e5ec6d3660361009" d="M254.691283 -80.381992L255.024000 -80.598504L259.488000 -84.400049 +L263.952000 -89.038295L268.416000 -94.440095L272.880000 -100.520258 +L277.344000 -107.182896L281.808000 -114.322937L286.272000 -121.827777 +L290.736000 -129.579061L295.200000 -137.454545L295.200000 -137.454545 +L295.200000 -137.454545L290.736000 -118.702424L286.272000 -101.128567 +L281.808000 -85.837204L277.344000 -73.789150L272.880000 -65.741426 +L268.416000 -62.199701L263.952000 -63.386515L259.488000 -69.227295 +L255.024000 -79.355045z"/> +<path id="coll3_3_ea9f940b34b4b127ddaeae93dbac851f" d="M335.708717 -194.527099L339.840000 -197.215479L344.304000 -199.177904 +L348.768000 -200.166916L353.232000 -200.166916L357.696000 -199.177904 +L362.160000 -197.215479L366.624000 -194.310587L371.088000 -190.509042 +L375.552000 -185.870796L380.016000 -180.468996L384.480000 -174.388833 +L388.944000 -167.726195L393.408000 -160.586154L397.872000 -153.081314 +L402.336000 -145.330030L406.800000 -137.454545L406.800000 -137.454545 +L406.800000 -137.454545L402.336000 -118.702424L397.872000 -101.128567 +L393.408000 -85.837204L388.944000 -73.789150L384.480000 -65.741426 +L380.016000 -62.199701L375.552000 -63.386515L371.088000 -69.227295 +L366.624000 -79.355045L362.160000 -93.133400L357.696000 -109.696616 +L353.232000 -128.003964L348.768000 -146.905127L344.304000 -165.212475 +L339.840000 -181.775691z"/> +<path id="coll3_4_fca770bf0e4a6dd8e02ca3518b412a67" d="M477.891283 -80.381992L478.224000 -80.598504L482.688000 -84.400049 +L487.152000 -89.038295L491.616000 -94.440095L496.080000 -100.520258 +L500.544000 -107.182896L505.008000 -114.322937L509.472000 -121.827777 +L513.936000 -129.579061L513.936000 -129.579061L513.936000 -118.702424 +L509.472000 -101.128567L505.008000 -85.837204L500.544000 -73.789150 +L496.080000 -65.741426L491.616000 -62.199701L487.152000 -63.386515 +L482.688000 -69.227295L478.224000 -79.355045z"/> +</defs> +<g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #ff0000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll3_0_94785b50af4b70a86b59016efebda6fa" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #ff0000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll3_1_b89b074290be78a074730e88a9f8da14" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #ff0000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll3_2_300df8223ffbe600e5ec6d3660361009" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #ff0000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll3_3_ea9f940b34b4b127ddaeae93dbac851f" x="0.000000" y="432.000000"/> +</g><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #ff0000; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#coll3_4_fca770bf0e4a6dd8e02ca3518b412a67" x="0.000000" y="432.000000"/> +</g></g> +<g id="line2d27"> +<path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)" d="M72.000000 294.545455L76.464000 286.669970L80.928000 278.918686 +L85.392000 271.413846L89.856000 264.273805L94.320000 257.611167 +L98.784000 251.531004L103.248000 246.129204L107.712000 241.490958 +L112.176000 237.689413L116.640000 234.784521L121.104000 232.822096 +L125.568000 231.833084L130.032000 231.833084L134.496000 232.822096 +L138.960000 234.784521L143.424000 237.689413L147.888000 241.490958 +L152.352000 246.129204L156.816000 251.531004L161.280000 257.611167 +L165.744000 264.273805L170.208000 271.413846L174.672000 278.918686 +L179.136000 286.669970L183.600000 294.545455L188.064000 302.420939 +L192.528000 310.172223L196.992000 317.677063L201.456000 324.817104 +L205.920000 331.479742L210.384000 337.559905L214.848000 342.961705 +L219.312000 347.599951L223.776000 351.401496L228.240000 354.306388 +L232.704000 356.268813L237.168000 357.257825L241.632000 357.257825 +L246.096000 356.268813L250.560000 354.306388L255.024000 351.401496 +L259.488000 347.599951L263.952000 342.961705L268.416000 337.559905 +L272.880000 331.479742L277.344000 324.817104L281.808000 317.677063 +L286.272000 310.172223L290.736000 302.420939L295.200000 294.545455 +L299.664000 286.669970L304.128000 278.918686L308.592000 271.413846 +L313.056000 264.273805L317.520000 257.611167L321.984000 251.531004 +L326.448000 246.129204L330.912000 241.490958L335.376000 237.689413 +L339.840000 234.784521L344.304000 232.822096L348.768000 231.833084 +L353.232000 231.833084L357.696000 232.822096L362.160000 234.784521 +L366.624000 237.689413L371.088000 241.490958L375.552000 246.129204 +L380.016000 251.531004L384.480000 257.611167L388.944000 264.273805 +L393.408000 271.413846L397.872000 278.918686L402.336000 286.669970 +L406.800000 294.545455L411.264000 302.420939L415.728000 310.172223 +L420.192000 317.677063L424.656000 324.817104L429.120000 331.479742 +L433.584000 337.559905L438.048000 342.961705L442.512000 347.599951 +L446.976000 351.401496L451.440000 354.306388L455.904000 356.268813 +L460.368000 357.257825L464.832000 357.257825L469.296000 356.268813 +L473.760000 354.306388L478.224000 351.401496L482.688000 347.599951 +L487.152000 342.961705L491.616000 337.559905L496.080000 331.479742 +L500.544000 324.817104L505.008000 317.677063L509.472000 310.172223 +L513.936000 302.420939"/> +</g> +<g id="line2d28"> +<path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)" d="M72.000000 294.545455L76.464000 275.793333L80.928000 258.219476 +L85.392000 242.928113M112.176000 236.445954L116.640000 250.224309 +L121.104000 266.787525L125.568000 285.094873L130.032000 303.996036 +L134.496000 322.303384L138.960000 338.866600L143.424000 352.644955 +L147.888000 362.772705L152.352000 368.613485L156.816000 369.800299 +L161.280000 366.258574L165.744000 358.210850L170.208000 346.162796 +L174.672000 330.871433L179.136000 313.297576L183.600000 294.545455 +L188.064000 275.793333L192.528000 258.219476L196.992000 242.928113 +M223.776000 236.445954L228.240000 250.224309L232.704000 266.787525 +L237.168000 285.094873L241.632000 303.996036L246.096000 322.303384 +L250.560000 338.866600L255.024000 352.644955L259.488000 362.772705 +L263.952000 368.613485L268.416000 369.800299L272.880000 366.258574 +L277.344000 358.210850L281.808000 346.162796L286.272000 330.871433 +L290.736000 313.297576L295.200000 294.545455L299.664000 275.793333 +L304.128000 258.219476L308.592000 242.928113M335.376000 236.445954 +L339.840000 250.224309L344.304000 266.787525L348.768000 285.094873 +L353.232000 303.996036L357.696000 322.303384L362.160000 338.866600 +L366.624000 352.644955L371.088000 362.772705L375.552000 368.613485 +L380.016000 369.800299L384.480000 366.258574L388.944000 358.210850 +L393.408000 346.162796L397.872000 330.871433L402.336000 313.297576 +L406.800000 294.545455L411.264000 275.793333L415.728000 258.219476 +L420.192000 242.928113M446.976000 236.445954L451.440000 250.224309 +L455.904000 266.787525L460.368000 285.094873L464.832000 303.996036 +L469.296000 322.303384L473.760000 338.866600L478.224000 352.644955 +L482.688000 362.772705L487.152000 368.613485L491.616000 369.800299 +L496.080000 366.258574L500.544000 358.210850L505.008000 346.162796 +L509.472000 330.871433L513.936000 313.297576"/> +</g> +<g id="matplotlib.axis3"> +<g id="xtick6"> +<g id="line2d29"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="72.000000" y="388.800000"/> +</g></g> +<g id="line2d30"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="72.000000" y="231.709091"/> +</g></g> +<g id="text13"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(63.250000,401.706250)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/> +</g> +</g> +</g> +<g id="xtick7"> +<g id="line2d31"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="183.600000" y="388.800000"/> +</g></g> +<g id="line2d32"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="183.600000" y="231.709091"/> +</g></g> +<g id="text14"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(174.975000,401.706250)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/> +</g> +</g> +</g> +<g id="xtick8"> +<g id="line2d33"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="295.200000" y="388.800000"/> +</g></g> +<g id="line2d34"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="295.200000" y="231.709091"/> +</g></g> +<g id="text15"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(286.707812,401.706250)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/> +</g> +</g> +</g> +<g id="xtick9"> +<g id="line2d35"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="406.800000" y="388.800000"/> +</g></g> +<g id="line2d36"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="406.800000" y="231.709091"/> +</g></g> +<g id="text16"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(398.432812,401.550000)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/> +</g> +</g> +</g> +<g id="xtick10"> +<g id="line2d37"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="518.400000" y="388.800000"/> +</g></g> +<g id="line2d38"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="518.400000" y="231.709091"/> +</g></g> +<g id="text17"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(509.689062,401.706250)scale(0.120000)"> +<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/> +</g> +</g> +</g> +</g> +<g id="matplotlib.axis4"> +<g id="ytick8"> +<g id="line2d39"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="388.800000"/> +</g></g> +<g id="line2d40"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="388.800000"/> +</g></g> +<g id="text18"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(41.156250,393.089063)scale(0.120000)"> +<use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7" x="83.789062"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="147.412109"/> +<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="179.199219"/> +</g> +</g> +</g> +<g id="ytick9"> +<g id="line2d41"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="357.381818"/> +</g></g> +<g id="line2d42"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="357.381818"/> +</g></g> +<g id="text19"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(40.906250,361.749006)scale(0.120000)"> +<use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7" x="83.789062"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="147.412109"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="179.199219"/> +</g> +</g> +</g> +<g id="ytick10"> +<g id="line2d43"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="325.963636"/> +</g></g> +<g id="line2d44"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="325.963636"/> +</g></g> +<g id="text20"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(41.156250,330.330824)scale(0.120000)"> +<use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="83.789062"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="147.412109"/> +<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="179.199219"/> +</g> +</g> +</g> +<g id="ytick11"> +<g id="line2d45"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="294.545455"/> +</g></g> +<g id="line2d46"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="294.545455"/> +</g></g> +<g id="text21"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(50.500000,298.912642)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/> +</g> +</g> +</g> +<g id="ytick12"> +<g id="line2d47"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="263.127273"/> +</g></g> +<g id="line2d48"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="263.127273"/> +</g></g> +<g id="text22"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(50.750000,267.494460)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="95.410156"/> +</g> +</g> +</g> +<g id="ytick13"> +<g id="line2d49"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="231.709091"/> +</g></g> +<g id="line2d50"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="231.709091"/> +</g></g> +<g id="text23"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(51.015625,236.076278)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/> +</g> +</g> +</g> +</g> +<g id="patch8"> +<path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M72.000000 231.709091L518.400000 231.709091"/> +</g> +<g id="patch9"> +<path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M518.400000 388.800000L518.400000 231.709091"/> +</g> +<g id="... [truncated message content]
Revision: 8280 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8280&view=rev Author: mdboom Date: 2010年04月28日 15:08:19 +0000 (2010年4月28日) Log Message: ----------- Fix path simplification -- distance threshold should have been squared. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/offset_points.png trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/polar_axes.png trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_simplification/fft_peaks.png trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_simplification/fft_peaks.svg trunk/matplotlib/lib/matplotlib/tests/test_simplification.py trunk/matplotlib/src/path_converters.h Modified: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/offset_points.png =================================================================== (Binary files differ) Modified: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/polar_axes.png =================================================================== (Binary files differ) Modified: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_simplification/fft_peaks.png =================================================================== (Binary files differ) Modified: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_simplification/fft_peaks.svg =================================================================== --- trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_simplification/fft_peaks.svg 2010年04月28日 06:44:49 UTC (rev 8279) +++ trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_simplification/fft_peaks.svg 2010年04月28日 15:08:19 UTC (rev 8280) @@ -23,11 +23,12 @@ <clipPath id="p50431ccdcb28178602d99d9270004dde"> <rect x="72.000000" y="43.200000" width="446.400000" height="345.600000"/> </clipPath> -</defs><path style="fill: none; stroke: #0000ff; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#p50431ccdcb28178602d99d9270004dde)" d="M72.000000 388.800000L76.145143 388.578724L76.151520 388.455734 -L76.157897 388.474541L76.177029 70.552590L76.489509 388.799636 -L175.303337 388.800000L485.723520 388.493668L485.736274 386.681411 -L485.755406 70.552590L486.067886 388.799652L489.926057 388.800000 -L489.926057 388.800000"/> +</defs><path style="fill: none; stroke: #0000ff; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#p50431ccdcb28178602d99d9270004dde)" d="M72.000000 388.800000L76.132389 388.704243L76.151520 388.455734 +L76.157897 388.474541L76.170651 262.490246L76.177029 70.552590 +L76.272686 388.786908L76.629806 388.799881L221.059337 388.800000 +L485.704389 388.713691L485.729897 388.401770L485.736274 386.681411 +L485.755406 70.552590L485.844686 388.786149L486.182674 388.799863 +L489.926057 388.800000L489.926057 388.800000"/> </g> <g id="matplotlib.axis1"> </g> Modified: trunk/matplotlib/lib/matplotlib/tests/test_simplification.py =================================================================== --- trunk/matplotlib/lib/matplotlib/tests/test_simplification.py 2010年04月28日 06:44:49 UTC (rev 8279) +++ trunk/matplotlib/lib/matplotlib/tests/test_simplification.py 2010年04月28日 15:08:19 UTC (rev 8280) @@ -69,7 +69,7 @@ path = transform.transform_path(path) simplified = list(path.iter_segments(simplify=(800, 600))) - assert len(simplified) == 2675 + assert len(simplified) == 3884 def test_sine_plus_noise(): np.random.seed(0) @@ -86,7 +86,7 @@ path = transform.transform_path(path) simplified = list(path.iter_segments(simplify=(800, 600))) - assert len(simplified) == 628 + assert len(simplified) == 876 @image_comparison(baseline_images=['simplify_curve']) def test_simplify_curve(): @@ -131,7 +131,7 @@ path = transform.transform_path(path) simplified = list(path.iter_segments(simplify=(800, 600))) - assert len(simplified) == 13 + assert len(simplified) == 17 def test_start_with_moveto(): # Should be entirely clipped away to a single MOVETO Modified: trunk/matplotlib/src/path_converters.h =================================================================== --- trunk/matplotlib/src/path_converters.h 2010年04月28日 06:44:49 UTC (rev 8279) +++ trunk/matplotlib/src/path_converters.h 2010年04月28日 15:08:19 UTC (rev 8280) @@ -477,7 +477,7 @@ /* Set simplify to true to perform simplification */ PathSimplifier(VertexSource& source, bool do_simplify, double simplify_threshold) : m_source(&source), m_simplify(do_simplify), - m_simplify_threshold(simplify_threshold), + m_simplify_threshold(simplify_threshold*simplify_threshold), m_moveto(true), m_after_moveto(false), m_lastx(0.0), m_lasty(0.0), m_clipped(false), m_origdx(0.0), m_origdy(0.0), This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8279 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8279&view=rev Author: efiring Date: 2010年04月28日 06:44:49 +0000 (2010年4月28日) Log Message: ----------- contourf_demo: illustrate use of set_under and set_over with contourf colors kw Modified Paths: -------------- trunk/matplotlib/examples/pylab_examples/contourf_demo.py Modified: trunk/matplotlib/examples/pylab_examples/contourf_demo.py =================================================================== --- trunk/matplotlib/examples/pylab_examples/contourf_demo.py 2010年04月27日 20:30:53 UTC (rev 8278) +++ trunk/matplotlib/examples/pylab_examples/contourf_demo.py 2010年04月28日 06:44:49 UTC (rev 8279) @@ -61,10 +61,16 @@ # Now make a contour plot with the levels specified, # and with the colormap generated automatically from a list # of colors. -levels = [-2, -1.5, -1, -0.5, 0, 0.5, 1, 1.5] +levels = [-1.5, -1, -0.5, 0, 0.5, 1] CS3 = contourf(X, Y, Z, levels, colors = ('r', 'g', 'b'), - origin=origin) + origin=origin, + extend='both') +# Our data range extends outside the range of levels; make +# data below the lowest contour level yellow, and above the +# highest level cyan: +CS3.cmap.set_under('yellow') +CS3.cmap.set_over('cyan') CS4 = contour(X, Y, Z, levels, colors = ('k',), @@ -72,6 +78,9 @@ origin = origin) title('Listed colors (3 masked regions)') clabel(CS4, fmt = '%2.1f', colors = 'w', fontsize=14) + +# Notice that the colorbar command gets all the information it +# needs from the ContourSet object, CS3. colorbar(CS3) show() This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8278 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8278&view=rev Author: efiring Date: 2010年04月27日 20:30:53 +0000 (2010年4月27日) Log Message: ----------- contouring: fix various bugs Modified Paths: -------------- trunk/matplotlib/examples/pylab_examples/contour_image.py trunk/matplotlib/lib/matplotlib/contour.py trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py Modified: trunk/matplotlib/examples/pylab_examples/contour_image.py =================================================================== --- trunk/matplotlib/examples/pylab_examples/contour_image.py 2010年04月27日 19:39:27 UTC (rev 8277) +++ trunk/matplotlib/examples/pylab_examples/contour_image.py 2010年04月27日 20:30:53 UTC (rev 8278) @@ -67,7 +67,7 @@ imshow(Z, extent=extent) v = axis() -contour(Z, cset3.levels, hold='on', colors = 'k', +contour(Z, levels, hold='on', colors = 'k', origin='upper', extent=extent) axis(v) title("Image, origin 'upper'") @@ -76,7 +76,7 @@ imshow(Z, origin='lower', extent=extent) v = axis() -contour(Z, cset3.levels, hold='on', colors = 'k', +contour(Z, levels, hold='on', colors = 'k', origin='lower', extent=extent) axis(v) title("Image, origin 'lower'") @@ -91,7 +91,7 @@ # domain that is contoured does not extend beyond these pixel centers. im = imshow(Z, interpolation='nearest', extent=extent) v = axis() -contour(Z, cset3.levels, hold='on', colors = 'k', +contour(Z, levels, hold='on', colors = 'k', origin='image', extent=extent) axis(v) ylim = get(gca(), 'ylim') Modified: trunk/matplotlib/lib/matplotlib/contour.py =================================================================== --- trunk/matplotlib/lib/matplotlib/contour.py 2010年04月27日 19:39:27 UTC (rev 8277) +++ trunk/matplotlib/lib/matplotlib/contour.py 2010年04月27日 20:30:53 UTC (rev 8278) @@ -147,7 +147,7 @@ if len(args) == 0: levels = self.levels - indices = range(len(self.levels)) + indices = range(len(levels)) elif len(args) == 1: levlabs = list(args[0]) indices, levels = [], [] @@ -674,7 +674,10 @@ self._process_levels() if self.colors is not None: - cmap = colors.ListedColormap(self.colors, N=len(self.layers)) + ncolors = len(self.levels) + if self.filled: + ncolors -= 1 + cmap = colors.ListedColormap(self.colors, N=ncolors) if self.filled: self.collections = cbook.silent_list('collections.PathCollection') else: @@ -772,7 +775,7 @@ havelimits = True if havelimits: self.ax.update_datalim([min, max]) - self.ax.autoscale_view() + self.ax.autoscale_view(tight=True) def _get_allsegs_and_allkinds(self): """ @@ -881,13 +884,15 @@ self.vmin = 2 * self.levels[0] - self.levels[1] if self.extend in ('both', 'max'): self.vmax = 2 * self.levels[-1] - self.levels[-2] - self.layers = self._levels # contour: a line is a thin layer if self.filled: self.layers = 0.5 * (self._levels[:-1] + self._levels[1:]) if self.extend in ('both', 'min'): self.layers[0] = 0.5 * (self.vmin + self._levels[1]) if self.extend in ('both', 'max'): self.layers[-1] = 0.5 * (self.vmax + self._levels[-2]) + else: + self.layers = self.levels # contour: a line is a thin layer + # Use only original levels--no extended levels def _process_colors(self): """ @@ -903,11 +908,13 @@ """ self.monochrome = self.cmap.monochrome if self.colors is not None: - i0, i1 = 0, len(self.layers) + i0, i1 = 0, len(self.levels) + if self.filled: + i1 -= 1 if self.extend in ('both', 'min'): i0 = -1 if self.extend in ('both', 'max'): - i1 = i1 + 1 + i1 += 1 self.cvalues = range(i0, i1) self.set_norm(colors.NoNorm()) else: @@ -944,8 +951,9 @@ tlinestyles = ['solid'] * Nlev if self.monochrome: neg_ls = mpl.rcParams['contour.negative_linestyle'] + eps = - (self.zmax - self.zmin) * 1e-15 for i, lev in enumerate(self.levels): - if lev < 0.0: + if lev < eps: tlinestyles[i] = neg_ls else: if cbook.is_string_like(linestyles): @@ -1073,6 +1081,8 @@ C = args[0].Cntr if self.levels is None: self.levels = args[0].levels + self.zmin = args[0].zmin + self.zmax = args[0].zmax else: x, y, z = self._contour_args(args, kwargs) @@ -1081,7 +1091,7 @@ y0 = ma.minimum(y) y1 = ma.maximum(y) self.ax.update_datalim([(x0,y0), (x1,y1)]) - self.ax.autoscale_view() + self.ax.autoscale_view(tight=True) _mask = ma.getmask(z) if _mask is ma.nomask: _mask = None Modified: trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py =================================================================== --- trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py 2010年04月27日 19:39:27 UTC (rev 8277) +++ trunk/matplotlib/lib/mpl_toolkits/mplot3d/axes3d.py 2010年04月27日 20:30:53 UTC (rev 8278) @@ -201,7 +201,7 @@ # Let autoscale_view figure out how to use this data. self.autoscale_view() - def autoscale_view(self, scalex=True, scaley=True, scalez=True): + def autoscale_view(self, scalex=True, scaley=True, scalez=True, **kw): # This method looks at the rectanglular volume (see above) # of data and decides how to scale the view portal to fit it. @@ -284,19 +284,19 @@ if elev or azim are None (default), then the initial value is used which was specified in the :class:`Axes3D` constructor. """ - + self.dist = 10 - + if elev is None: self.elev = self.initial_elev else: self.elev = elev - + if azim is None: self.azim = self.initial_azim else: self.azim = azim - + def get_proj(self): """Create the projection matrix from the current viewing position. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8277 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8277&view=rev Author: mdboom Date: 2010年04月27日 19:39:27 +0000 (2010年4月27日) Log Message: ----------- Expose tolerance argument to image_comparison decorator. Use it to raise the tolerance for the test_figimage test. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/testing/decorators.py trunk/matplotlib/lib/matplotlib/tests/test_image.py Modified: trunk/matplotlib/lib/matplotlib/testing/decorators.py =================================================================== --- trunk/matplotlib/lib/matplotlib/testing/decorators.py 2010年04月27日 00:04:14 UTC (rev 8276) +++ trunk/matplotlib/lib/matplotlib/testing/decorators.py 2010年04月27日 19:39:27 UTC (rev 8277) @@ -46,7 +46,7 @@ return nose.tools.make_decorator(f)(failer) return known_fail_decorator -def image_comparison(baseline_images=None,extensions=None): +def image_comparison(baseline_images=None,extensions=None,tol=1e-3): """ call signature:: @@ -118,7 +118,6 @@ 'image does not exist: %s'%expected) # compare the images - tol=1e-3 # default tolerance err = compare_images( expected, actual, tol, in_decorator=True ) if err: Modified: trunk/matplotlib/lib/matplotlib/tests/test_image.py =================================================================== --- trunk/matplotlib/lib/matplotlib/tests/test_image.py 2010年04月27日 00:04:14 UTC (rev 8276) +++ trunk/matplotlib/lib/matplotlib/tests/test_image.py 2010年04月27日 19:39:27 UTC (rev 8277) @@ -29,7 +29,7 @@ fig.savefig('image_interps') -@image_comparison(baseline_images=['figimage-0', 'figimage-1'], extensions=['png']) +@image_comparison(baseline_images=['figimage-0', 'figimage-1'], extensions=['png'], tol=1.5e-3) def test_figimage(): 'test the figimage method' This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8276 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8276&view=rev Author: efiring Date: 2010年04月27日 00:04:14 +0000 (2010年4月27日) Log Message: ----------- dates: DateLocator.nonsingular checks for near-singularity. Also fixed fill_units test and baseline files Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/dates.py trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_units.pdf trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_units.png trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_units.svg trunk/matplotlib/lib/matplotlib/tests/test_axes.py Modified: trunk/matplotlib/lib/matplotlib/dates.py =================================================================== --- trunk/matplotlib/lib/matplotlib/dates.py 2010年04月26日 23:05:14 UTC (rev 8275) +++ trunk/matplotlib/lib/matplotlib/dates.py 2010年04月27日 00:04:14 UTC (rev 8276) @@ -509,8 +509,9 @@ def nonsingular(self, vmin, vmax): unit = self._get_unit() - vmin -= 2*unit - vmax += 2*unit + if abs(vmax - vmin) < 1e-6: + vmin -= 2*unit + vmax += 2*unit return vmin, vmax class RRuleLocator(DateLocator): Modified: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_units.pdf =================================================================== (Binary files differ) Modified: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_units.png =================================================================== (Binary files differ) Modified: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_units.svg =================================================================== --- trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_units.svg 2010年04月26日 23:05:14 UTC (rev 8275) +++ trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/fill_units.svg 2010年04月27日 00:04:14 UTC (rev 8276) @@ -26,10 +26,6 @@ </defs><path style="fill: #0000ff; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#p2d9d45e9a89c598215ad1d41ce14c5ae)" d="M72.000000 180.654545L72.000000 180.654545L274.909091 43.200000 L274.909091 180.654545L72.000000 180.654545"/> </g> -<g id="patch4"> -<path style="fill: #0000ff; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#p2d9d45e9a89c598215ad1d41ce14c5ae)" d="M72.000000 180.654545L72.000000 180.654545L274.909091 43.200000 -L274.909091 180.654545L72.000000 180.654545"/> -</g> <g id="line2d1"> <path style="fill: none; stroke: #ff0000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#p2d9d45e9a89c598215ad1d41ce14c5ae)" d="M72.000000 165.381818"/> </g> @@ -347,25 +343,25 @@ </g> </g> </g> -<g id="patch5"> +<g id="patch4"> <path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M72.000000 43.200000L274.909091 43.200000"/> </g> -<g id="patch6"> +<g id="patch5"> <path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M274.909091 180.654545L274.909091 43.200000"/> </g> -<g id="patch7"> +<g id="patch6"> <path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M72.000000 180.654545L274.909091 180.654545"/> </g> -<g id="patch8"> +<g id="patch7"> <path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M72.000000 180.654545L72.000000 43.200000"/> </g> </g> <g id="axes2"> -<g id="patch9"> +<g id="patch8"> <path style="fill: #ffffff; opacity: 1.000000" d="M315.490909 180.654545L518.400000 180.654545L518.400000 43.200000 L315.490909 43.200000L315.490909 180.654545"/> </g> -<g id="patch10"> +<g id="patch9"> <defs> <clipPath id="p3d2e026aea9c82e875e510dfacc02aae"> <rect x="315.490909" y="43.200000" width="202.909091" height="137.454545"/> @@ -650,209 +646,305 @@ </g> </g> </g> -<g id="patch11"> +<g id="patch10"> <path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M315.490909 43.200000L518.400000 43.200000"/> </g> -<g id="patch12"> +<g id="patch11"> <path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M518.400000 180.654545L518.400000 43.200000"/> </g> -<g id="patch13"> +<g id="patch12"> <path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M315.490909 180.654545L518.400000 180.654545"/> </g> -<g id="patch14"> +<g id="patch13"> <path style="fill: none; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" d="M315.490909 180.654545L315.490909 43.200000"/> </g> </g> <g id="axes3"> -<g id="patch15"> +<g id="patch14"> <path style="fill: #ffffff; opacity: 1.000000" d="M72.000000 345.600000L274.909091 345.600000L274.909091 208.145455 L72.000000 208.145455L72.000000 345.600000"/> </g> -<g id="line2d95"> +<g id="patch15"> <defs> <clipPath id="pa02e4b8b38c6ad0a77aadc2b541c639b"> <rect x="72.000000" y="208.145455" width="202.909091" height="137.454545"/> </clipPath> -</defs><path style="fill: none; stroke: #ff0000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#pa02e4b8b38c6ad0a77aadc2b541c639b)" d="M173.454545 276.872727"/> +</defs><path style="fill: #0000ff; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#pa02e4b8b38c6ad0a77aadc2b541c639b)" d="M72.000000 345.600000L72.000000 345.600000L274.909091 208.145455 +L274.909091 345.600000L72.000000 345.600000"/> </g> +<g id="line2d95"> +<path style="fill: none; stroke: #ff0000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#pa02e4b8b38c6ad0a77aadc2b541c639b)" d="M72.000000 330.327273"/> +</g> <g id="matplotlib.axis5"> <g id="xtick27"> <g id="line2d96"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="93.925745" y="345.600000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="72.000000" y="345.600000"/> </g></g> <g id="line2d97"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="93.925745" y="208.145455"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="72.000000" y="208.145455"/> </g></g> <g id="text23"> <defs> -<path id="c_680e57528fc97ec49605e10827a40086" d="M39.406250 -66.218750q-10.750000 0.000000 -17.078125 8.015625q-6.312500 8.000000 -6.312500 21.828125q0.000000 13.765625 6.312500 21.781250q6.328125 8.000000 17.078125 8.000000q10.734375 0.000000 17.015625 -8.000000q6.281250 -8.015625 6.281250 -21.781250q0.000000 -13.828125 -6.281250 -21.828125q-6.281250 -8.015625 -17.015625 -8.015625M39.406250 -74.218750q15.328125 0.000000 24.500000 10.281250q9.187500 10.281250 9.187500 27.562500q0.000000 17.234375 -9.187500 27.515625q-9.171875 10.281250 -24.500000 10.281250q-15.375000 0.000000 -24.593750 -10.250000q-9.203125 -10.265625 -9.203125 -27.546875q0.000000 -17.281250 9.203125 -27.562500q9.218750 -10.281250 24.593750 -10.281250"/> -<path id="c_d650c37394b681142a10dfc54356d478" d="M48.781250 -52.593750l0.000000 8.406250q-3.812500 -2.109375 -7.640625 -3.156250q-3.828125 -1.046875 -7.734375 -1.046875q-8.750000 0.000000 -13.593750 5.546875q-4.828125 5.531250 -4.828125 15.546875q0.000000 10.015625 4.828125 15.562500q4.843750 5.531250 13.593750 5.531250q3.906250 0.000000 7.734375 -1.046875q3.828125 -1.046875 7.640625 -3.156250l0.000000 8.312500q-3.765625 1.750000 -7.796875 2.625000q-4.015625 0.890625 -8.562500 0.890625q-12.359375 0.000000 -19.640625 -7.765625q-7.265625 -7.765625 -7.265625 -20.953125q0.000000 -13.375000 7.343750 -21.031250q7.359375 -7.671875 20.156250 -7.671875q4.140625 0.000000 8.093750 0.859375q3.953125 0.843750 7.671875 2.546875"/> -<path id="c_0f8c41144cfbf448378cb6fd1cc8e549" d="M18.312500 -70.218750l0.000000 15.531250l18.500000 0.000000l0.000000 6.984375l-18.500000 0.000000l0.000000 29.687500q0.000000 6.687500 1.828125 8.593750q1.828125 1.906250 7.453125 1.906250l9.218750 0.000000l0.000000 7.515625l-9.218750 0.000000q-10.406250 0.000000 -14.359375 -3.875000q-3.953125 -3.890625 -3.953125 -14.140625l0.000000 -29.687500l-6.593750 0.000000l0.000000 -6.984375l6.593750 0.000000l0.000000 -15.531250z"/> -<path id="c_d41d8cd98f00b204e9800998ecf8427e" d=""/> +<path id="c_1e6263c731c474ef67a09469452f0b99" d="M11.718750 -12.406250l10.296875 0.000000l0.000000 12.406250l-10.296875 0.000000zM11.718750 -51.703125l10.296875 0.000000l0.000000 12.390625l-10.296875 0.000000z"/> </defs> -<g style="fill: #000000; opacity: 1.000000" transform="translate(47.661044,384.000949)rotate(-30.0)scale(0.120000)"> -<use xlink:href="#c_680e57528fc97ec49605e10827a40086"/> -<use xlink:href="#c_d650c37394b681142a10dfc54356d478" x="78.710938"/> -<use xlink:href="#c_0f8c41144cfbf448378cb6fd1cc8e549" x="133.691406"/> -<use xlink:href="#c_d41d8cd98f00b204e9800998ecf8427e" x="172.900391"/> -<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="204.687500"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="268.310547"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="331.933594"/> -<use xlink:href="#c_956f18cfdaf972f35a6c2b4aaac2532b" x="395.556641"/> +<g style="fill: #000000; opacity: 1.000000" transform="translate(26.668983,383.461887)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> </g> </g> </g> <g id="xtick28"> <g id="line2d98"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="119.236650" y="345.600000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="88.909091" y="345.600000"/> </g></g> <g id="line2d99"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="119.236650" y="208.145455"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="88.909091" y="208.145455"/> </g></g> <g id="text24"> -<defs> -<path id="c_6023715d605f81e6eb43b7f9d77e7c51" d="M34.187500 -63.187500l-13.390625 36.281250l26.812500 0.000000zM28.609375 -72.906250l11.187500 0.000000l27.781250 72.906250l-10.250000 0.000000l-6.640625 -18.703125l-32.859375 0.000000l-6.640625 18.703125l-10.406250 0.000000z"/> -<path id="c_f15a64fcd463ef4629c48bab42cde24c" d="M18.109375 -8.203125l0.000000 29.000000l-9.031250 0.000000l0.000000 -75.484375l9.031250 0.000000l0.000000 8.296875q2.843750 -4.875000 7.156250 -7.234375q4.328125 -2.375000 10.328125 -2.375000q9.968750 0.000000 16.187500 7.906250q6.234375 7.906250 6.234375 20.796875q0.000000 12.890625 -6.234375 20.812500q-6.218750 7.906250 -16.187500 7.906250q-6.000000 0.000000 -10.328125 -2.375000q-4.312500 -2.375000 -7.156250 -7.250000M48.687500 -27.296875q0.000000 -9.906250 -4.078125 -15.546875q-4.078125 -5.640625 -11.203125 -5.640625q-7.140625 0.000000 -11.218750 5.640625q-4.078125 5.640625 -4.078125 15.546875q0.000000 9.906250 4.078125 15.546875q4.078125 5.640625 11.218750 5.640625q7.125000 0.000000 11.203125 -5.640625q4.078125 -5.640625 4.078125 -15.546875"/> -<path id="c_6ec8d5749226675394676a5d2a3b468b" d="M41.109375 -46.296875q-1.515625 -0.875000 -3.296875 -1.281250q-1.781250 -0.421875 -3.921875 -0.421875q-7.625000 0.000000 -11.703125 4.953125q-4.078125 4.953125 -4.078125 14.234375l0.000000 28.812500l-9.031250 0.000000l0.000000 -54.687500l9.031250 0.000000l0.000000 8.500000q2.843750 -4.984375 7.375000 -7.390625q4.546875 -2.421875 11.046875 -2.421875q0.921875 0.000000 2.046875 0.125000q1.125000 0.109375 2.484375 0.359375z"/> -</defs> -<g style="fill: #000000; opacity: 1.000000" transform="translate(72.281835,384.087477)rotate(-30.0)scale(0.120000)"> -<use xlink:href="#c_6023715d605f81e6eb43b7f9d77e7c51"/> -<use xlink:href="#c_f15a64fcd463ef4629c48bab42cde24c" x="68.408203"/> -<use xlink:href="#c_6ec8d5749226675394676a5d2a3b468b" x="131.884766"/> -<use xlink:href="#c_d41d8cd98f00b204e9800998ecf8427e" x="172.998047"/> -<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="204.785156"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="268.408203"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="332.031250"/> -<use xlink:href="#c_bef35738d52871942e50b9de9b122bab" x="395.654297"/> +<g style="fill: #000000; opacity: 1.000000" transform="translate(43.578074,383.461887)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> </g> </g> </g> <g id="xtick29"> <g id="line2d100"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="144.547555" y="345.600000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="105.818182" y="345.600000"/> </g></g> <g id="line2d101"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="144.547555" y="208.145455"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="105.818182" y="208.145455"/> </g></g> <g id="text25"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(98.106943,384.102512)rotate(-30.0)scale(0.120000)"> -<use xlink:href="#c_680e57528fc97ec49605e10827a40086"/> -<use xlink:href="#c_d650c37394b681142a10dfc54356d478" x="78.710938"/> -<use xlink:href="#c_0f8c41144cfbf448378cb6fd1cc8e549" x="133.691406"/> -<use xlink:href="#c_d41d8cd98f00b204e9800998ecf8427e" x="172.900391"/> -<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="204.687500"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="268.310547"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="331.933594"/> -<use xlink:href="#c_bef35738d52871942e50b9de9b122bab" x="395.556641"/> +<g style="fill: #000000; opacity: 1.000000" transform="translate(60.487165,383.461887)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_a0416418d96557a09b8c1332d34883ba" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> </g> </g> </g> <g id="xtick30"> <g id="line2d102"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="169.720150" y="345.600000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="122.727273" y="345.600000"/> </g></g> <g id="line2d103"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="169.720150" y="208.145455"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="122.727273" y="208.145455"/> </g></g> <g id="text26"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(122.778866,384.079665)rotate(-30.0)scale(0.120000)"> -<use xlink:href="#c_6023715d605f81e6eb43b7f9d77e7c51"/> -<use xlink:href="#c_f15a64fcd463ef4629c48bab42cde24c" x="68.408203"/> -<use xlink:href="#c_6ec8d5749226675394676a5d2a3b468b" x="131.884766"/> -<use xlink:href="#c_d41d8cd98f00b204e9800998ecf8427e" x="172.998047"/> -<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="204.785156"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="268.408203"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="332.031250"/> -<use xlink:href="#c_cd96f817f3cab988d24a2b49a5577fe6" x="395.654297"/> +<g style="fill: #000000; opacity: 1.000000" transform="translate(77.396256,383.461887)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> </g> </g> </g> <g id="xtick31"> <g id="line2d104"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="195.031055" y="345.600000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="139.636364" y="345.600000"/> </g></g> <g id="line2d105"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="195.031055" y="208.145455"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="139.636364" y="208.145455"/> </g></g> <g id="text27"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(148.603974,384.094699)rotate(-30.0)scale(0.120000)"> -<use xlink:href="#c_680e57528fc97ec49605e10827a40086"/> -<use xlink:href="#c_d650c37394b681142a10dfc54356d478" x="78.710938"/> -<use xlink:href="#c_0f8c41144cfbf448378cb6fd1cc8e549" x="133.691406"/> -<use xlink:href="#c_d41d8cd98f00b204e9800998ecf8427e" x="172.900391"/> -<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="204.687500"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="268.310547"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="331.933594"/> -<use xlink:href="#c_cd96f817f3cab988d24a2b49a5577fe6" x="395.556641"/> +<g style="fill: #000000; opacity: 1.000000" transform="translate(94.305346,383.461887)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_bef35738d52871942e50b9de9b122bab" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> </g> </g> </g> <g id="xtick32"> <g id="line2d106"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="220.203649" y="345.600000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="156.545455" y="345.600000"/> </g></g> <g id="line2d107"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="220.203649" y="208.145455"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="156.545455" y="208.145455"/> </g></g> <g id="text28"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(173.221771,384.103102)rotate(-30.0)scale(0.120000)"> -<use xlink:href="#c_6023715d605f81e6eb43b7f9d77e7c51"/> -<use xlink:href="#c_f15a64fcd463ef4629c48bab42cde24c" x="68.408203"/> -<use xlink:href="#c_6ec8d5749226675394676a5d2a3b468b" x="131.884766"/> -<use xlink:href="#c_d41d8cd98f00b204e9800998ecf8427e" x="172.998047"/> -<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="204.785156"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="268.408203"/> -<use xlink:href="#c_42baa63129a918535c52adb20d687ea7" x="332.031250"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="395.654297"/> +<g style="fill: #000000; opacity: 1.000000" transform="translate(111.660982,383.204074)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> </g> </g> </g> <g id="xtick33"> <g id="line2d108"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="245.514555" y="345.600000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="173.454545" y="345.600000"/> </g></g> <g id="line2d109"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="245.514555" y="208.145455"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="173.454545" y="208.145455"/> </g></g> <g id="text29"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(199.046879,384.118137)rotate(-30.0)scale(0.120000)"> -<use xlink:href="#c_680e57528fc97ec49605e10827a40086"/> -<use xlink:href="#c_d650c37394b681142a10dfc54356d478" x="78.710938"/> -<use xlink:href="#c_0f8c41144cfbf448378cb6fd1cc8e549" x="133.691406"/> -<use xlink:href="#c_d41d8cd98f00b204e9800998ecf8427e" x="172.900391"/> -<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="204.687500"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="268.310547"/> -<use xlink:href="#c_42baa63129a918535c52adb20d687ea7" x="331.933594"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="395.556641"/> +<g style="fill: #000000; opacity: 1.000000" transform="translate(128.570073,383.204074)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> </g> </g> </g> <g id="xtick34"> <g id="line2d110"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="270.687149" y="345.600000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="190.363636" y="345.600000"/> </g></g> <g id="line2d111"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="270.687149" y="208.145455"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="190.363636" y="208.145455"/> </g></g> <g id="text30"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(223.975904,383.946852)rotate(-30.0)scale(0.120000)"> -<use xlink:href="#c_6023715d605f81e6eb43b7f9d77e7c51"/> -<use xlink:href="#c_f15a64fcd463ef4629c48bab42cde24c" x="68.408203"/> -<use xlink:href="#c_6ec8d5749226675394676a5d2a3b468b" x="131.884766"/> -<use xlink:href="#c_d41d8cd98f00b204e9800998ecf8427e" x="172.998047"/> -<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="204.785156"/> -<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="268.408203"/> -<use xlink:href="#c_42baa63129a918535c52adb20d687ea7" x="332.031250"/> -<use xlink:href="#c_42baa63129a918535c52adb20d687ea7" x="395.654297"/> +<g style="fill: #000000; opacity: 1.000000" transform="translate(145.479164,383.204074)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_a0416418d96557a09b8c1332d34883ba" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> </g> </g> </g> +<g id="xtick35"> +<g id="line2d112"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="207.272727" y="345.600000"/> +</g></g> +<g id="line2d113"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="207.272727" y="208.145455"/> +</g></g> <g id="text31"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(162.388254,383.204074)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> +</g> +</g> +</g> +<g id="xtick36"> +<g id="line2d114"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="224.181818" y="345.600000"/> +</g></g> +<g id="line2d115"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="224.181818" y="208.145455"/> +</g></g> +<g id="text32"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(179.297345,383.204074)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_bef35738d52871942e50b9de9b122bab" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> +</g> +</g> +</g> +<g id="xtick37"> +<g id="line2d116"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="241.090909" y="345.600000"/> +</g></g> +<g id="line2d117"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="241.090909" y="208.145455"/> +</g></g> +<g id="text33"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(195.827550,383.422824)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> +</g> +</g> +</g> +<g id="xtick38"> +<g id="line2d118"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="258.000000" y="345.600000"/> +</g></g> +<g id="line2d119"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="258.000000" y="208.145455"/> +</g></g> +<g id="text34"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(212.736641,383.422824)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1"/> +<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> +</g> +</g> +</g> +<g id="xtick39"> +<g id="line2d120"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="274.909091" y="345.600000"/> +</g></g> +<g id="line2d121"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="274.909091" y="208.145455"/> +</g></g> +<g id="text35"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(229.578074,383.461887)rotate(-30.0)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="160.937500"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="224.560547"/> +<use xlink:href="#c_1e6263c731c474ef67a09469452f0b99" x="288.183594"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="321.875000"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="385.498047"/> +</g> +</g> +</g> +<g id="text36"> <defs> <path id="c_dbe439baa035de1a298d0549b22269d8" d="M9.812500 -72.906250l46.093750 0.000000l0.000000 8.312500l-36.234375 0.000000l0.000000 21.578125l34.718750 0.000000l0.000000 8.296875l-34.718750 0.000000l0.000000 26.421875l37.109375 0.000000l0.000000 8.296875l-46.968750 0.000000z"/> <path id="c_9e4b30cbdf32072672ded72e9074c4c9" d="M-0.296875 -72.906250l61.671875 0.000000l0.000000 8.312500l-25.875000 0.000000l0.000000 64.593750l-9.906250 0.000000l0.000000 -64.593750l-25.890625 0.000000z"/> </defs> -<g style="fill: #000000; opacity: 1.000000" transform="translate(166.571733,400.353102)scale(0.120000)"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(166.571733,397.383762)scale(0.120000)"> <use xlink:href="#c_dbe439baa035de1a298d0549b22269d8"/> <use xlink:href="#c_9e4b30cbdf32072672ded72e9074c4c9" x="63.183594"/> </g> @@ -860,116 +952,166 @@ </g> <g id="matplotlib.axis6"> <g id="ytick21"> -<g id="line2d112"> +<g id="line2d122"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="345.600000"/> </g></g> -<g id="line2d113"> +<g id="line2d123"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="345.600000"/> </g></g> -<g id="text32"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(50.328125,349.967187)scale(0.120000)"> -<use xlink:href="#c_cd96f817f3cab988d24a2b49a5577fe6"/> +<g id="text37"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(50.500000,349.967187)scale(0.120000)"> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> <use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> -<use xlink:href="#c_a0416418d96557a09b8c1332d34883ba" x="95.410156"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="95.410156"/> </g> </g> </g> <g id="ytick22"> -<g id="line2d114"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="322.690909"/> +<g id="line2d124"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="330.327273"/> </g></g> -<g id="line2d115"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="322.690909"/> +<g id="line2d125"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="330.327273"/> </g></g> -<g id="text33"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(50.421875,327.058097)scale(0.120000)"> -<use xlink:href="#c_cd96f817f3cab988d24a2b49a5577fe6"/> -<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> -<use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="95.410156"/> +<g id="text38"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(43.375000,334.694460)scale(0.120000)"> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="159.033203"/> </g> </g> </g> <g id="ytick23"> -<g id="line2d116"> +<g id="line2d126"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="315.054545"/> +</g></g> +<g id="line2d127"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="315.054545"/> +</g></g> +<g id="text39"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(42.937500,319.421733)scale(0.120000)"> +<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="159.033203"/> +</g> +</g> +</g> +<g id="ytick24"> +<g id="line2d128"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="299.781818"/> </g></g> -<g id="line2d117"> +<g id="line2d129"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="299.781818"/> </g></g> -<g id="text34"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(50.484375,304.149006)scale(0.120000)"> -<use xlink:href="#c_cd96f817f3cab988d24a2b49a5577fe6"/> -<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="63.623047"/> -<use xlink:href="#c_bef35738d52871942e50b9de9b122bab" x="95.410156"/> +<g id="text40"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(42.984375,304.149006)scale(0.120000)"> +<use xlink:href="#c_3dcfa38a02242cb63ec6726c6e70be7a"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="159.033203"/> </g> </g> </g> -<g id="ytick24"> -<g id="line2d118"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="276.872727"/> +<g id="ytick25"> +<g id="line2d130"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="284.509091"/> </g></g> -<g id="line2d119"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="276.872727"/> +<g id="line2d131"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="284.509091"/> </g></g> -<g id="text35"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(43.375000,281.239915)scale(0.120000)"> -<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<g id="text41"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(42.656250,288.876278)scale(0.120000)"> +<use xlink:href="#c_a0416418d96557a09b8c1332d34883ba"/> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> <use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="127.246094"/> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="159.033203"/> </g> </g> </g> -<g id="ytick25"> -<g id="line2d120"> +<g id="ytick26"> +<g id="line2d132"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="269.236364"/> +</g></g> +<g id="line2d133"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="269.236364"/> +</g></g> +<g id="text42"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(42.984375,273.603551)scale(0.120000)"> +<use xlink:href="#c_1260a2df50f305f3db244e29828f968e"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="159.033203"/> +</g> +</g> +</g> +<g id="ytick27"> +<g id="line2d134"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="253.963636"/> </g></g> -<g id="line2d121"> +<g id="line2d135"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="253.963636"/> </g></g> -<g id="text36"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(43.781250,258.330824)scale(0.120000)"> -<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<g id="text43"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(42.906250,258.330824)scale(0.120000)"> +<use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a"/> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> <use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="127.246094"/> -<use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="159.033203"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="159.033203"/> </g> </g> </g> -<g id="ytick26"> -<g id="line2d122"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="231.054545"/> +<g id="ytick28"> +<g id="line2d136"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="238.690909"/> </g></g> -<g id="line2d123"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="231.054545"/> +<g id="line2d137"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="238.690909"/> </g></g> -<g id="text37"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(43.250000,235.421733)scale(0.120000)"> -<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<g id="text44"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(43.046875,243.058097)scale(0.120000)"> +<use xlink:href="#c_956f18cfdaf972f35a6c2b4aaac2532b"/> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> <use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="127.246094"/> -<use xlink:href="#c_a0416418d96557a09b8c1332d34883ba" x="159.033203"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="159.033203"/> </g> </g> </g> -<g id="ytick27"> -<g id="line2d124"> +<g id="ytick29"> +<g id="line2d138"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="223.418182"/> +</g></g> +<g id="line2d139"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="223.418182"/> +</g></g> +<g id="text45"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(42.875000,227.785369)scale(0.120000)"> +<use xlink:href="#c_bef35738d52871942e50b9de9b122bab"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> +<use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="127.246094"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="159.033203"/> +</g> +</g> +</g> +<g id="ytick30"> +<g id="line2d140"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="208.145455"/> </g></g> -<g id="line2d125"> +<g id="line2d141"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="274.909091" y="208.145455"/> </g></g> -<g id="text38"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(43.343750,212.512642)scale(0.120000)"> -<use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> +<g id="text46"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(42.812500,212.512642)scale(0.120000)"> +<use xlink:href="#c_cd96f817f3cab988d24a2b49a5577fe6"/> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> <use xlink:href="#c_ed3e21196fb739f392806f09ca0594ef" x="127.246094"/> -<use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="159.033203"/> +<use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="159.033203"/> </g> </g> </g> -<g id="text39"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(38.250000,284.818040)rotate(-90.0)scale(0.120000)"> +<g id="text47"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(37.656250,284.818040)rotate(-90.0)scale(0.120000)"> <use xlink:href="#c_d821beae607506e87470f334d9ff47af"/> <use xlink:href="#c_0bce5afba2dc6b9024b26277c38ad8e8" x="63.476562"/> <use xlink:href="#c_e3864de5dabf2f8dd9eee74726882ec1" x="125.000000"/> @@ -1002,21 +1144,18 @@ </defs><path style="fill: #0000ff; stroke: #000000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#p42a322063e64e6fa296be7cf0ea77b7c)" d="M315.490909 345.600000L315.490909 345.600000L518.400000 208.145455 L518.400000 345.600000L315.490909 345.600000"/> </g> -<g id="line2d126"> +<g id="line2d142"> <path style="fill: none; stroke: #ff0000; stroke-width: 1.000000; stroke-linejoin: round; stroke-linecap: square; opacity: 1.000000" clip-path="url(#p42a322063e64e6fa296be7cf0ea77b7c)" d="M315.490909 330.327273"/> </g> <g id="matplotlib.axis7"> -<g id="xtick35"> -<g id="line2d127"> +<g id="xtick40"> +<g id="line2d143"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="315.490909" y="345.600000"/> </g></g> -<g id="line2d128"> +<g id="line2d144"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="315.490909" y="208.145455"/> </g></g> -<g id="text40"> -<defs> -<path id="c_1e6263c731c474ef67a09469452f0b99" d="M11.718750 -12.406250l10.296875 0.000000l0.000000 12.406250l-10.296875 0.000000zM11.718750 -51.703125l10.296875 0.000000l0.000000 12.390625l-10.296875 0.000000z"/> -</defs> +<g id="text48"> <g style="fill: #000000; opacity: 1.000000" transform="translate(270.159892,383.461887)rotate(-30.0)scale(0.120000)"> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> @@ -1029,14 +1168,14 @@ </g> </g> </g> -<g id="xtick36"> -<g id="line2d129"> +<g id="xtick41"> +<g id="line2d145"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="332.400000" y="345.600000"/> </g></g> -<g id="line2d130"> +<g id="line2d146"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="332.400000" y="208.145455"/> </g></g> -<g id="text41"> +<g id="text49"> <g style="fill: #000000; opacity: 1.000000" transform="translate(287.068983,383.461887)rotate(-30.0)scale(0.120000)"> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> <use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="63.623047"/> @@ -1049,14 +1188,14 @@ </g> </g> </g> -<g id="xtick37"> -<g id="line2d131"> +<g id="xtick42"> +<g id="line2d147"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="349.309091" y="345.600000"/> </g></g> -<g id="line2d132"> +<g id="line2d148"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="349.309091" y="208.145455"/> </g></g> -<g id="text42"> +<g id="text50"> <g style="fill: #000000; opacity: 1.000000" transform="translate(303.978074,383.461887)rotate(-30.0)scale(0.120000)"> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> <use xlink:href="#c_a0416418d96557a09b8c1332d34883ba" x="63.623047"/> @@ -1069,14 +1208,14 @@ </g> </g> </g> -<g id="xtick38"> -<g id="line2d133"> +<g id="xtick43"> +<g id="line2d149"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="366.218182" y="345.600000"/> </g></g> -<g id="line2d134"> +<g id="line2d150"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="366.218182" y="208.145455"/> </g></g> -<g id="text43"> +<g id="text51"> <g style="fill: #000000; opacity: 1.000000" transform="translate(320.887165,383.461887)rotate(-30.0)scale(0.120000)"> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="63.623047"/> @@ -1089,14 +1228,14 @@ </g> </g> </g> -<g id="xtick39"> -<g id="line2d135"> +<g id="xtick44"> +<g id="line2d151"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="383.127273" y="345.600000"/> </g></g> -<g id="line2d136"> +<g id="line2d152"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="383.127273" y="208.145455"/> </g></g> -<g id="text44"> +<g id="text52"> <g style="fill: #000000; opacity: 1.000000" transform="translate(337.796256,383.461887)rotate(-30.0)scale(0.120000)"> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115"/> <use xlink:href="#c_bef35738d52871942e50b9de9b122bab" x="63.623047"/> @@ -1109,14 +1248,14 @@ </g> </g> </g> -<g id="xtick40"> -<g id="line2d137"> +<g id="xtick45"> +<g id="line2d153"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="400.036364" y="345.600000"/> </g></g> -<g id="line2d138"> +<g id="line2d154"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="400.036364" y="208.145455"/> </g></g> -<g id="text45"> +<g id="text53"> <g style="fill: #000000; opacity: 1.000000" transform="translate(355.151891,383.204074)rotate(-30.0)scale(0.120000)"> <use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> @@ -1129,14 +1268,14 @@ </g> </g> </g> -<g id="xtick41"> -<g id="line2d139"> +<g id="xtick46"> +<g id="line2d155"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="416.945455" y="345.600000"/> </g></g> -<g id="line2d140"> +<g id="line2d156"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="416.945455" y="208.145455"/> </g></g> -<g id="text46"> +<g id="text54"> <g style="fill: #000000; opacity: 1.000000" transform="translate(372.060982,383.204074)rotate(-30.0)scale(0.120000)"> <use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> <use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="63.623047"/> @@ -1149,14 +1288,14 @@ </g> </g> </g> -<g id="xtick42"> -<g id="line2d141"> +<g id="xtick47"> +<g id="line2d157"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="433.854545" y="345.600000"/> </g></g> -<g id="line2d142"> +<g id="line2d158"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="433.854545" y="208.145455"/> </g></g> -<g id="text47"> +<g id="text55"> <g style="fill: #000000; opacity: 1.000000" transform="translate(388.970073,383.204074)rotate(-30.0)scale(0.120000)"> <use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> <use xlink:href="#c_a0416418d96557a09b8c1332d34883ba" x="63.623047"/> @@ -1169,14 +1308,14 @@ </g> </g> </g> -<g id="xtick43"> -<g id="line2d143"> +<g id="xtick48"> +<g id="line2d159"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="450.763636" y="345.600000"/> </g></g> -<g id="line2d144"> +<g id="line2d160"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="450.763636" y="208.145455"/> </g></g> -<g id="text48"> +<g id="text56"> <g style="fill: #000000; opacity: 1.000000" transform="translate(405.879163,383.204074)rotate(-30.0)scale(0.120000)"> <use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="63.623047"/> @@ -1189,14 +1328,14 @@ </g> </g> </g> -<g id="xtick44"> -<g id="line2d145"> +<g id="xtick49"> +<g id="line2d161"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="467.672727" y="345.600000"/> </g></g> -<g id="line2d146"> +<g id="line2d162"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="467.672727" y="208.145455"/> </g></g> -<g id="text49"> +<g id="text57"> <g style="fill: #000000; opacity: 1.000000" transform="translate(422.788254,383.204074)rotate(-30.0)scale(0.120000)"> <use xlink:href="#c_42baa63129a918535c52adb20d687ea7"/> <use xlink:href="#c_bef35738d52871942e50b9de9b122bab" x="63.623047"/> @@ -1209,14 +1348,14 @@ </g> </g> </g> -<g id="xtick45"> -<g id="line2d147"> +<g id="xtick50"> +<g id="line2d163"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="484.581818" y="345.600000"/> </g></g> -<g id="line2d148"> +<g id="line2d164"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="484.581818" y="208.145455"/> </g></g> -<g id="text50"> +<g id="text58"> <g style="fill: #000000; opacity: 1.000000" transform="translate(439.318459,383.422824)rotate(-30.0)scale(0.120000)"> <use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1"/> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> @@ -1229,14 +1368,14 @@ </g> </g> </g> -<g id="xtick46"> -<g id="line2d149"> +<g id="xtick51"> +<g id="line2d165"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="501.490909" y="345.600000"/> </g></g> -<g id="line2d150"> +<g id="line2d166"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="501.490909" y="208.145455"/> </g></g> -<g id="text51"> +<g id="text59"> <g style="fill: #000000; opacity: 1.000000" transform="translate(456.227550,383.422824)rotate(-30.0)scale(0.120000)"> <use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1"/> <use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="63.623047"/> @@ -1249,14 +1388,14 @@ </g> </g> </g> -<g id="xtick47"> -<g id="line2d151"> +<g id="xtick52"> +<g id="line2d167"> <g ><use style="fill: none; stroke: #000000; stroke-wid... [truncated message content]
Revision: 8275 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8275&view=rev Author: efiring Date: 2010年04月26日 23:05:14 +0000 (2010年4月26日) Log Message: ----------- axes: fix autoscale_view for test_axes/single_date test, and update test output. In the old version, single_date was behaving as if tight autoscaling were in effect; now it puts the viewLim on tick marks. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/single_date.pdf trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/single_date.png trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/single_date.svg Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2010年04月26日 21:11:03 UTC (rev 8274) +++ trunk/matplotlib/lib/matplotlib/axes.py 2010年04月26日 23:05:14 UTC (rev 8275) @@ -1722,14 +1722,20 @@ dl = [ax.dataLim for ax in xshared] bb = mtransforms.BboxBase.union(dl) x0, x1 = bb.intervalx - x0, x1 = mtransforms.nonsingular(x0, x1, increasing=False, - expander=0.05) + xlocator = self.xaxis.get_major_locator() + try: + # e.g. DateLocator has its own nonsingular() + x0, x1 = xlocator.nonsingular(x0, x1) + except AttributeError: + # Default nonsingular for, e.g., MaxNLocator + x0, x1 = mtransforms.nonsingular(x0, x1, increasing=False, + expander=0.05) if self._xmargin > 0: delta = (x1 - x0) * self._xmargin x0 -= delta x1 += delta if not _tight: - x0, x1 = self.xaxis.get_major_locator().view_limits(x0, x1) + x0, x1 = xlocator.view_limits(x0, x1) self.set_xbound(x0, x1) if scaley and self._autoscaleYon: @@ -1737,14 +1743,18 @@ dl = [ax.dataLim for ax in yshared] bb = mtransforms.BboxBase.union(dl) y0, y1 = bb.intervaly - y0, y1 = mtransforms.nonsingular(y0, y1, increasing=False, - expander=0.05) + ylocator = self.yaxis.get_major_locator() + try: + y0, y1 = ylocator.nonsingular(y0, y1) + except AttributeError: + y0, y1 = mtransforms.nonsingular(y0, y1, increasing=False, + expander=0.05) if self._ymargin > 0: delta = (y1 - y0) * self._ymargin y0 -= delta y1 += delta if not _tight: - y0, y1 = self.yaxis.get_major_locator().view_limits(y0, y1) + y0, y1 = ylocator.view_limits(y0, y1) self.set_ybound(y0, y1) #### Drawing Modified: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/single_date.pdf =================================================================== (Binary files differ) Modified: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/single_date.png =================================================================== (Binary files differ) Modified: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/single_date.svg =================================================================== --- trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/single_date.svg 2010年04月26日 21:11:03 UTC (rev 8274) +++ trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/single_date.svg 2010年04月26日 23:05:14 UTC (rev 8275) @@ -37,11 +37,11 @@ <g id="xtick1"> <g id="line2d2"> <defs><path id="m30e32995789d870ad79a2e54c91cf9c6" d="M0.000000 0.000000L0.000000 -4.000000"/></defs> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="125.163821" y="200.290909"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="127.035616" y="200.290909"/> </g></g> <g id="line2d3"> <defs><path id="m9281cae24120827b11d5ea8a7ad3e96b" d="M0.000000 0.000000L0.000000 4.000000"/></defs> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="125.163821" y="43.200000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="127.035616" y="43.200000"/> </g></g> <g id="text1"> <defs> @@ -54,7 +54,7 @@ <path id="c_956f18cfdaf972f35a6c2b4aaac2532b" d="M8.203125 -72.906250l46.875000 0.000000l0.000000 4.203125l-26.468750 68.703125l-10.296875 0.000000l24.906250 -64.593750l-35.015625 0.000000z"/> <path id="c_cc8d6d580d1b10c8632f7a42cd53db8a" d="M33.015625 -40.375000q-6.640625 0.000000 -10.531250 4.546875q-3.875000 4.531250 -3.875000 12.437500q0.000000 7.859375 3.875000 12.437500q3.890625 4.562500 10.531250 4.562500q6.640625 0.000000 10.515625 -4.562500q3.875000 -4.578125 3.875000 -12.437500q0.000000 -7.906250 -3.875000 -12.437500q-3.875000 -4.546875 -10.515625 -4.546875M52.593750 -71.296875l0.000000 8.984375q-3.718750 -1.750000 -7.500000 -2.671875q-3.781250 -0.937500 -7.500000 -0.937500q-9.765625 0.000000 -14.921875 6.593750q-5.140625 6.593750 -5.875000 19.921875q2.875000 -4.250000 7.218750 -6.515625q4.359375 -2.265625 9.578125 -2.265625q10.984375 0.000000 17.359375 6.671875q6.375000 6.656250 6.375000 18.125000q0.000000 11.234375 -6.640625 18.031250q-6.640625 6.781250 -17.671875 6.781250q-12.656250 0.000000 -19.343750 -9.687500q-6.687500 -9.703125 -6.687500 -28.109375q0.000000 -17.281250 8.203125 -27.562500q8.203125 -10.281250 22.015625 -10.281250q3.718750 0.000000 7.500000 0.734375q3.781250 0.734375 7.890625 2.187500"/> </defs> -<g style="fill: #000000; opacity: 1.000000" transform="translate(97.616946,213.197159)scale(0.120000)"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(99.488741,213.197159)scale(0.120000)"> <use xlink:href="#c_72234ddc5dcad8d05c893ef0371171da"/> <use xlink:href="#c_01d93a582460e35a7945ca50d148ffeb" x="86.279297"/> <use xlink:href="#c_6ec8d5749226675394676a5d2a3b468b" x="147.558594"/> @@ -68,10 +68,10 @@ </g> <g id="xtick2"> <g id="line2d4"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="182.048652" y="200.290909"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="183.294247" y="200.290909"/> </g></g> <g id="line2d5"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="182.048652" y="43.200000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="183.294247" y="43.200000"/> </g></g> <g id="text2"> <defs> @@ -79,7 +79,7 @@ <path id="c_0bce5afba2dc6b9024b26277c38ad8e8" d="M56.203125 -29.593750l0.000000 4.390625l-41.312500 0.000000q0.593750 9.281250 5.593750 14.140625q5.000000 4.859375 13.937500 4.859375q5.171875 0.000000 10.031250 -1.265625q4.859375 -1.265625 9.656250 -3.812500l0.000000 8.500000q-4.843750 2.046875 -9.921875 3.125000q-5.078125 1.078125 -10.296875 1.078125q-13.093750 0.000000 -20.734375 -7.609375q-7.640625 -7.625000 -7.640625 -20.625000q0.000000 -13.421875 7.250000 -21.296875q7.250000 -7.890625 19.562500 -7.890625q11.031250 0.000000 17.453125 7.109375q6.421875 7.093750 6.421875 19.296875M47.218750 -32.234375q-0.093750 -7.359375 -4.125000 -11.750000q-4.031250 -4.406250 -10.671875 -4.406250q-7.515625 0.000000 -12.031250 4.250000q-4.515625 4.250000 -5.203125 11.968750z"/> <path id="c_f15a64fcd463ef4629c48bab42cde24c" d="M18.109375 -8.203125l0.000000 29.000000l-9.031250 0.000000l0.000000 -75.484375l9.031250 0.000000l0.000000 8.296875q2.843750 -4.875000 7.156250 -7.234375q4.328125 -2.375000 10.328125 -2.375000q9.968750 0.000000 16.187500 7.906250q6.234375 7.906250 6.234375 20.796875q0.000000 12.890625 -6.234375 20.812500q-6.218750 7.906250 -16.187500 7.906250q-6.000000 0.000000 -10.328125 -2.375000q-4.312500 -2.375000 -7.156250 -7.250000M48.687500 -27.296875q0.000000 -9.906250 -4.078125 -15.546875q-4.078125 -5.640625 -11.203125 -5.640625q-7.140625 0.000000 -11.218750 5.640625q-4.078125 5.640625 -4.078125 15.546875q0.000000 9.906250 4.078125 15.546875q4.078125 5.640625 11.218750 5.640625q7.125000 0.000000 11.203125 -5.640625q4.078125 -5.640625 4.078125 -15.546875"/> </defs> -<g style="fill: #000000; opacity: 1.000000" transform="translate(154.322089,213.197159)scale(0.120000)"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(155.567684,213.197159)scale(0.120000)"> <use xlink:href="#c_b672e4bee30772019085dff1098f516d"/> <use xlink:href="#c_0bce5afba2dc6b9024b26277c38ad8e8" x="63.476562"/> <use xlink:href="#c_f15a64fcd463ef4629c48bab42cde24c" x="125.000000"/> @@ -93,13 +93,13 @@ </g> <g id="xtick3"> <g id="line2d6"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="238.006012" y="200.290909"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="238.635616" y="200.290909"/> </g></g> <g id="line2d7"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="238.006012" y="43.200000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="238.635616" y="43.200000"/> </g></g> <g id="text3"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(210.591950,213.197159)scale(0.120000)"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(211.221554,213.197159)scale(0.120000)"> <use xlink:href="#c_72234ddc5dcad8d05c893ef0371171da"/> <use xlink:href="#c_01d93a582460e35a7945ca50d148ffeb" x="86.279297"/> <use xlink:href="#c_6ec8d5749226675394676a5d2a3b468b" x="147.558594"/> @@ -113,13 +113,13 @@ </g> <g id="xtick4"> <g id="line2d8"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="294.890843" y="200.290909"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="294.894247" y="200.290909"/> </g></g> <g id="line2d9"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="294.890843" y="43.200000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="294.894247" y="43.200000"/> </g></g> <g id="text4"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(267.297093,213.197159)scale(0.120000)"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(267.300497,213.197159)scale(0.120000)"> <use xlink:href="#c_b672e4bee30772019085dff1098f516d"/> <use xlink:href="#c_0bce5afba2dc6b9024b26277c38ad8e8" x="63.476562"/> <use xlink:href="#c_f15a64fcd463ef4629c48bab42cde24c" x="125.000000"/> @@ -133,16 +133,16 @@ </g> <g id="xtick5"> <g id="line2d10"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="350.848204" y="200.290909"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="350.235616" y="200.290909"/> </g></g> <g id="line2d11"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="350.848204" y="43.200000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="350.235616" y="43.200000"/> </g></g> <g id="text5"> <defs> <path id="c_bef35738d52871942e50b9de9b122bab" d="M31.781250 -34.625000q-7.031250 0.000000 -11.062500 3.765625q-4.015625 3.765625 -4.015625 10.343750q0.000000 6.593750 4.015625 10.359375q4.031250 3.765625 11.062500 3.765625q7.031250 0.000000 11.078125 -3.781250q4.062500 -3.796875 4.062500 -10.343750q0.000000 -6.578125 -4.031250 -10.343750q-4.015625 -3.765625 -11.109375 -3.765625M21.921875 -38.812500q-6.343750 -1.562500 -9.890625 -5.906250q-3.531250 -4.359375 -3.531250 -10.609375q0.000000 -8.734375 6.218750 -13.812500q6.234375 -5.078125 17.062500 -5.078125q10.890625 0.000000 17.093750 5.078125q6.203125 5.078125 6.203125 13.812500q0.000000 6.250000 -3.546875 10.609375q-3.531250 4.343750 -9.828125 5.906250q7.125000 1.656250 11.093750 6.500000q3.984375 4.828125 3.984375 11.796875q0.000000 10.609375 -6.468750 16.281250q-6.468750 5.656250 -18.531250 5.656250q-12.046875 0.000000 -18.531250 -5.656250q-6.468750 -5.671875 -6.468750 -16.281250q0.000000 -6.968750 4.000000 -11.796875q4.015625 -4.843750 11.140625 -6.500000M18.312500 -54.390625q0.000000 5.656250 3.531250 8.828125q3.546875 3.171875 9.937500 3.171875q6.359375 0.000000 9.937500 -3.171875q3.593750 -3.171875 3.593750 -8.828125q0.000000 -5.671875 -3.593750 -8.843750q-3.578125 -3.171875 -9.937500 -3.171875q-6.390625 0.000000 -9.937500 3.171875q-3.531250 3.171875 -3.531250 8.843750"/> </defs> -<g style="fill: #000000; opacity: 1.000000" transform="translate(323.332579,213.197159)scale(0.120000)"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(322.719991,213.197159)scale(0.120000)"> <use xlink:href="#c_72234ddc5dcad8d05c893ef0371171da"/> <use xlink:href="#c_01d93a582460e35a7945ca50d148ffeb" x="86.279297"/> <use xlink:href="#c_6ec8d5749226675394676a5d2a3b468b" x="147.558594"/> @@ -156,13 +156,13 @@ </g> <g id="xtick6"> <g id="line2d12"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="407.733035" y="200.290909"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="406.494247" y="200.290909"/> </g></g> <g id="line2d13"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="407.733035" y="43.200000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="406.494247" y="43.200000"/> </g></g> <g id="text6"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(380.037722,213.197159)scale(0.120000)"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(378.798934,213.197159)scale(0.120000)"> <use xlink:href="#c_b672e4bee30772019085dff1098f516d"/> <use xlink:href="#c_0bce5afba2dc6b9024b26277c38ad8e8" x="63.476562"/> <use xlink:href="#c_f15a64fcd463ef4629c48bab42cde24c" x="125.000000"/> @@ -176,13 +176,13 @@ </g> <g id="xtick7"> <g id="line2d14"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="463.690396" y="200.290909"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="461.835616" y="200.290909"/> </g></g> <g id="line2d15"> -<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="463.690396" y="43.200000"/> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="461.835616" y="43.200000"/> </g></g> <g id="text7"> -<g style="fill: #000000; opacity: 1.000000" transform="translate(436.182583,213.197159)scale(0.120000)"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(434.327804,213.197159)scale(0.120000)"> <use xlink:href="#c_72234ddc5dcad8d05c893ef0371171da"/> <use xlink:href="#c_01d93a582460e35a7945ca50d148ffeb" x="86.279297"/> <use xlink:href="#c_6ec8d5749226675394676a5d2a3b468b" x="147.558594"/> @@ -194,18 +194,38 @@ </g> </g> </g> +<g id="xtick8"> +<g id="line2d16"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="518.094247" y="200.290909"/> +</g></g> +<g id="line2d17"> +<g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="518.094247" y="43.200000"/> +</g></g> +<g id="text8"> +<g style="fill: #000000; opacity: 1.000000" transform="translate(490.406747,213.197159)scale(0.120000)"> +<use xlink:href="#c_b672e4bee30772019085dff1098f516d"/> +<use xlink:href="#c_0bce5afba2dc6b9024b26277c38ad8e8" x="63.476562"/> +<use xlink:href="#c_f15a64fcd463ef4629c48bab42cde24c" x="125.000000"/> +<use xlink:href="#c_d41d8cd98f00b204e9800998ecf8427e" x="188.476562"/> +<use xlink:href="#c_42baa63129a918535c52adb20d687ea7" x="220.263672"/> +<use xlink:href="#c_cd96f817f3cab988d24a2b49a5577fe6" x="283.886719"/> +<use xlink:href="#c_956f18cfdaf972f35a6c2b4aaac2532b" x="347.509766"/> +<use xlink:href="#c_cd96f817f3cab988d24a2b49a5577fe6" x="411.132812"/> </g> +</g> +</g> +</g> <g id="matplotlib.axis2"> <g id="ytick1"> -<g id="line2d16"> +<g id="line2d18"> <defs><path id="m3400efa6b1638b3fea9e19e898273957" d="M0.000000 0.000000L4.000000 0.000000"/></defs> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="200.290909"/> </g></g> -<g id="line2d17"> +<g id="line2d19"> <defs><path id="m20b58b2501143cb5e0a5e8f1ef6f1643" d="M0.000000 0.000000L-4.000000 0.000000"/></defs> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="200.290909"/> </g></g> -<g id="text8"> +<g id="text9"> <defs> <path id="c_6a8d56c819c37117ab4cf023bec22a5a" d="M10.593750 -35.500000l62.593750 0.000000l0.000000 8.296875l-62.593750 0.000000z"/> </defs> @@ -217,13 +237,13 @@ </g> </g> <g id="ytick2"> -<g id="line2d18"> +<g id="line2d20"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="177.849351"/> </g></g> -<g id="line2d19"> +<g id="line2d21"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="177.849351"/> </g></g> -<g id="text9"> +<g id="text10"> <g style="fill: #000000; opacity: 1.000000" transform="translate(44.750000,182.216538)scale(0.120000)"> <use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="83.789062"/> @@ -232,13 +252,13 @@ </g> </g> <g id="ytick3"> -<g id="line2d20"> +<g id="line2d22"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="155.407792"/> </g></g> -<g id="line2d21"> +<g id="line2d23"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="155.407792"/> </g></g> -<g id="text10"> +<g id="text11"> <g style="fill: #000000; opacity: 1.000000" transform="translate(44.953125,159.774980)scale(0.120000)"> <use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="83.789062"/> @@ -247,13 +267,13 @@ </g> </g> <g id="ytick4"> -<g id="line2d22"> +<g id="line2d24"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="132.966234"/> </g></g> -<g id="line2d23"> +<g id="line2d25"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="132.966234"/> </g></g> -<g id="text11"> +<g id="text12"> <g style="fill: #000000; opacity: 1.000000" transform="translate(44.687500,137.333421)scale(0.120000)"> <use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="83.789062"/> @@ -262,13 +282,13 @@ </g> </g> <g id="ytick5"> -<g id="line2d24"> +<g id="line2d26"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="110.524675"/> </g></g> -<g id="line2d25"> +<g id="line2d27"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="110.524675"/> </g></g> -<g id="text12"> +<g id="text13"> <defs> <path id="c_1260a2df50f305f3db244e29828f968e" d="M10.796875 -72.906250l38.718750 0.000000l0.000000 8.312500l-29.687500 0.000000l0.000000 17.859375q2.140625 -0.734375 4.281250 -1.093750q2.156250 -0.359375 4.312500 -0.359375q12.203125 0.000000 19.328125 6.687500q7.140625 6.687500 7.140625 18.109375q0.000000 11.765625 -7.328125 18.296875q-7.328125 6.515625 -20.656250 6.515625q-4.593750 0.000000 -9.359375 -0.781250q-4.750000 -0.781250 -9.828125 -2.343750l0.000000 -9.921875q4.390625 2.390625 9.078125 3.562500q4.687500 1.171875 9.906250 1.171875q8.453125 0.000000 13.375000 -4.437500q4.937500 -4.437500 4.937500 -12.062500q0.000000 -7.609375 -4.937500 -12.046875q-4.921875 -4.453125 -13.375000 -4.453125q-3.953125 0.000000 -7.890625 0.875000q-3.921875 0.875000 -8.015625 2.734375z"/> </defs> @@ -280,13 +300,13 @@ </g> </g> <g id="ytick6"> -<g id="line2d26"> +<g id="line2d28"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="88.083117"/> </g></g> -<g id="line2d27"> +<g id="line2d29"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="88.083117"/> </g></g> -<g id="text13"> +<g id="text14"> <defs> <path id="c_a0416418d96557a09b8c1332d34883ba" d="M37.796875 -64.312500l-24.906250 38.921875l24.906250 0.000000zM35.203125 -72.906250l12.406250 0.000000l0.000000 47.515625l10.406250 0.000000l0.000000 8.203125l-10.406250 0.000000l0.000000 17.187500l-9.812500 0.000000l0.000000 -17.187500l-32.906250 0.000000l0.000000 -9.515625z"/> </defs> @@ -298,13 +318,13 @@ </g> </g> <g id="ytick7"> -<g id="line2d28"> +<g id="line2d30"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="65.641558"/> </g></g> -<g id="line2d29"> +<g id="line2d31"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="65.641558"/> </g></g> -<g id="text14"> +<g id="text15"> <defs> <path id="c_3dcfa38a02242cb63ec6726c6e70be7a" d="M40.578125 -39.312500q7.078125 1.515625 11.046875 6.312500q3.984375 4.781250 3.984375 11.812500q0.000000 10.781250 -7.421875 16.703125q-7.421875 5.906250 -21.093750 5.906250q-4.578125 0.000000 -9.437500 -0.906250q-4.859375 -0.906250 -10.031250 -2.718750l0.000000 -9.515625q4.093750 2.390625 8.968750 3.609375q4.890625 1.218750 10.218750 1.218750q9.265625 0.000000 14.125000 -3.656250q4.859375 -3.656250 4.859375 -10.640625q0.000000 -6.453125 -4.515625 -10.078125q-4.515625 -3.640625 -12.562500 -3.640625l-8.500000 0.000000l0.000000 -8.109375l8.890625 0.000000q7.265625 0.000000 11.125000 -2.906250q3.859375 -2.906250 3.859375 -8.375000q0.000000 -5.609375 -3.984375 -8.609375q-3.968750 -3.015625 -11.390625 -3.015625q-4.062500 0.000000 -8.703125 0.890625q-4.640625 0.875000 -10.203125 2.718750l0.000000 -8.781250q5.625000 -1.562500 10.531250 -2.343750q4.906250 -0.781250 9.250000 -0.781250q11.234375 0.000000 17.765625 5.109375q6.546875 5.093750 6.546875 13.781250q0.000000 6.062500 -3.468750 10.234375q-3.468750 4.171875 -9.859375 5.781250"/> </defs> @@ -316,13 +336,13 @@ </g> </g> <g id="ytick8"> -<g id="line2d30"> +<g id="line2d32"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="43.200000"/> </g></g> -<g id="line2d31"> +<g id="line2d33"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="43.200000"/> </g></g> -<g id="text15"> +<g id="text16"> <defs> <path id="c_ed3f3ed3ebfbd18bcb9c012009a68ad1" d="M19.187500 -8.296875l34.421875 0.000000l0.000000 8.296875l-46.281250 0.000000l0.000000 -8.296875q5.609375 -5.812500 15.296875 -15.593750q9.703125 -9.796875 12.187500 -12.640625q4.734375 -5.312500 6.609375 -9.000000q1.890625 -3.687500 1.890625 -7.250000q0.000000 -5.812500 -4.078125 -9.468750q-4.078125 -3.671875 -10.625000 -3.671875q-4.640625 0.000000 -9.796875 1.609375q-5.140625 1.609375 -11.000000 4.890625l0.000000 -9.968750q5.953125 -2.390625 11.125000 -3.609375q5.187500 -1.218750 9.484375 -1.218750q11.328125 0.000000 18.062500 5.671875q6.734375 5.656250 6.734375 15.125000q0.000000 4.500000 -1.687500 8.531250q-1.671875 4.015625 -6.125000 9.484375q-1.218750 1.421875 -7.765625 8.187500q-6.531250 6.765625 -18.453125 18.921875"/> </defs> @@ -352,7 +372,7 @@ <path style="fill: #ffffff; opacity: 1.000000" d="M72.000000 388.800000L518.400000 388.800000L518.400000 231.709091 L72.000000 231.709091L72.000000 388.800000"/> </g> -<g id="line2d32"> +<g id="line2d34"> <defs> <clipPath id="pdceb94b59b302b6d614f8fc54d3b8e04"> <rect x="72.000000" y="231.709091" width="446.400000" height="157.090909"/> @@ -360,14 +380,14 @@ </defs><g clip-path="url(#pdceb94b59b302b6d614f8fc54d3b8e04)"><use style="fill: #ff0000; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m87f81da4bcf58d853202912065521dc1" x="306.159120" y="311.152208"/> </g></g> <g id="matplotlib.axis3"> -<g id="xtick8"> -<g id="line2d33"> +<g id="xtick9"> +<g id="line2d35"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="72.000000" y="388.800000"/> </g></g> -<g id="line2d34"> +<g id="line2d36"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="72.000000" y="231.709091"/> </g></g> -<g id="text16"> +<g id="text17"> <defs> <path id="c_7a2040fe3b94fcd41d0a72c84e93b115" d="M31.781250 -66.406250q-7.609375 0.000000 -11.453125 7.500000q-3.828125 7.484375 -3.828125 22.531250q0.000000 14.984375 3.828125 22.484375q3.843750 7.500000 11.453125 7.500000q7.671875 0.000000 11.500000 -7.500000q3.843750 -7.500000 3.843750 -22.484375q0.000000 -15.046875 -3.843750 -22.531250q-3.828125 -7.500000 -11.500000 -7.500000M31.781250 -74.218750q12.265625 0.000000 18.734375 9.703125q6.468750 9.687500 6.468750 28.140625q0.000000 18.406250 -6.468750 28.109375q-6.468750 9.687500 -18.734375 9.687500q-12.250000 0.000000 -18.718750 -9.687500q-6.468750 -9.703125 -6.468750 -28.109375q0.000000 -18.453125 6.468750 -28.140625q6.468750 -9.703125 18.718750 -9.703125"/> </defs> @@ -381,14 +401,14 @@ </g> </g> </g> -<g id="xtick9"> -<g id="line2d35"> +<g id="xtick10"> +<g id="line2d37"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="127.800000" y="388.800000"/> </g></g> -<g id="line2d36"> +<g id="line2d38"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="127.800000" y="231.709091"/> </g></g> -<g id="text17"> +<g id="text18"> <g style="fill: #000000; opacity: 1.000000" transform="translate(105.698438,401.706250)scale(0.120000)"> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a"/> <use xlink:href="#c_cd96f817f3cab988d24a2b49a5577fe6" x="63.623047"/> @@ -399,14 +419,14 @@ </g> </g> </g> -<g id="xtick10"> -<g id="line2d37"> +<g id="xtick11"> +<g id="line2d39"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="183.600000" y="388.800000"/> </g></g> -<g id="line2d38"> +<g id="line2d40"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="183.600000" y="231.709091"/> </g></g> -<g id="text18"> +<g id="text19"> <g style="fill: #000000; opacity: 1.000000" transform="translate(161.568750,401.706250)scale(0.120000)"> <use xlink:href="#c_956f18cfdaf972f35a6c2b4aaac2532b"/> <use xlink:href="#c_7a2040fe3b94fcd41d0a72c84e93b115" x="63.623047"/> @@ -417,14 +437,14 @@ </g> </g> </g> -<g id="xtick11"> -<g id="line2d39"> +<g id="xtick12"> +<g id="line2d41"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="239.400000" y="388.800000"/> </g></g> -<g id="line2d40"> +<g id="line2d42"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="239.400000" y="231.709091"/> </g></g> -<g id="text19"> +<g id="text20"> <g style="fill: #000000; opacity: 1.000000" transform="translate(217.368750,401.706250)scale(0.120000)"> <use xlink:href="#c_956f18cfdaf972f35a6c2b4aaac2532b"/> <use xlink:href="#c_42baa63129a918535c52adb20d687ea7" x="63.623047"/> @@ -435,14 +455,14 @@ </g> </g> </g> -<g id="xtick12"> -<g id="line2d41"> +<g id="xtick13"> +<g id="line2d43"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="295.200000" y="388.800000"/> </g></g> -<g id="line2d42"> +<g id="line2d44"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="295.200000" y="231.709091"/> </g></g> -<g id="text20"> +<g id="text21"> <g style="fill: #000000; opacity: 1.000000" transform="translate(273.168750,401.706250)scale(0.120000)"> <use xlink:href="#c_956f18cfdaf972f35a6c2b4aaac2532b"/> <use xlink:href="#c_ed3f3ed3ebfbd18bcb9c012009a68ad1" x="63.623047"/> @@ -453,14 +473,14 @@ </g> </g> </g> -<g id="xtick13"> -<g id="line2d43"> +<g id="xtick14"> +<g id="line2d45"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="351.000000" y="388.800000"/> </g></g> -<g id="line2d44"> +<g id="line2d46"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="351.000000" y="231.709091"/> </g></g> -<g id="text21"> +<g id="text22"> <g style="fill: #000000; opacity: 1.000000" transform="translate(328.968750,401.706250)scale(0.120000)"> <use xlink:href="#c_956f18cfdaf972f35a6c2b4aaac2532b"/> <use xlink:href="#c_3dcfa38a02242cb63ec6726c6e70be7a" x="63.623047"/> @@ -471,14 +491,14 @@ </g> </g> </g> -<g id="xtick14"> -<g id="line2d45"> +<g id="xtick15"> +<g id="line2d47"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="406.800000" y="388.800000"/> </g></g> -<g id="line2d46"> +<g id="line2d48"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="406.800000" y="231.709091"/> </g></g> -<g id="text22"> +<g id="text23"> <g style="fill: #000000; opacity: 1.000000" transform="translate(384.768750,401.706250)scale(0.120000)"> <use xlink:href="#c_956f18cfdaf972f35a6c2b4aaac2532b"/> <use xlink:href="#c_a0416418d96557a09b8c1332d34883ba" x="63.623047"/> @@ -489,14 +509,14 @@ </g> </g> </g> -<g id="xtick15"> -<g id="line2d47"> +<g id="xtick16"> +<g id="line2d49"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="462.600000" y="388.800000"/> </g></g> -<g id="line2d48"> +<g id="line2d50"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="462.600000" y="231.709091"/> </g></g> -<g id="text23"> +<g id="text24"> <g style="fill: #000000; opacity: 1.000000" transform="translate(440.568750,401.706250)scale(0.120000)"> <use xlink:href="#c_956f18cfdaf972f35a6c2b4aaac2532b"/> <use xlink:href="#c_1260a2df50f305f3db244e29828f968e" x="63.623047"/> @@ -507,14 +527,14 @@ </g> </g> </g> -<g id="xtick16"> -<g id="line2d49"> +<g id="xtick17"> +<g id="line2d51"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m30e32995789d870ad79a2e54c91cf9c6" x="518.400000" y="388.800000"/> </g></g> -<g id="line2d50"> +<g id="line2d52"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m9281cae24120827b11d5ea8a7ad3e96b" x="518.400000" y="231.709091"/> </g></g> -<g id="text24"> +<g id="text25"> <g style="fill: #000000; opacity: 1.000000" transform="translate(496.368750,401.706250)scale(0.120000)"> <use xlink:href="#c_956f18cfdaf972f35a6c2b4aaac2532b"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="63.623047"/> @@ -528,13 +548,13 @@ </g> <g id="matplotlib.axis4"> <g id="ytick9"> -<g id="line2d51"> +<g id="line2d53"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="388.800000"/> </g></g> -<g id="line2d52"> +<g id="line2d54"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="388.800000"/> </g></g> -<g id="text25"> +<g id="text26"> <g style="fill: #000000; opacity: 1.000000" transform="translate(44.765625,393.167188)scale(0.120000)"> <use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="83.789062"/> @@ -543,13 +563,13 @@ </g> </g> <g id="ytick10"> -<g id="line2d53"> +<g id="line2d55"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="366.358442"/> </g></g> -<g id="line2d54"> +<g id="line2d56"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="366.358442"/> </g></g> -<g id="text26"> +<g id="text27"> <g style="fill: #000000; opacity: 1.000000" transform="translate(44.750000,370.725629)scale(0.120000)"> <use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="83.789062"/> @@ -558,13 +578,13 @@ </g> </g> <g id="ytick11"> -<g id="line2d55"> +<g id="line2d57"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="343.916883"/> </g></g> -<g id="line2d56"> +<g id="line2d58"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="343.916883"/> </g></g> -<g id="text27"> +<g id="text28"> <g style="fill: #000000; opacity: 1.000000" transform="translate(44.953125,348.284071)scale(0.120000)"> <use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="83.789062"/> @@ -573,13 +593,13 @@ </g> </g> <g id="ytick12"> -<g id="line2d57"> +<g id="line2d59"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="321.475325"/> </g></g> -<g id="line2d58"> +<g id="line2d60"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="321.475325"/> </g></g> -<g id="text28"> +<g id="text29"> <g style="fill: #000000; opacity: 1.000000" transform="translate(44.687500,325.842512)scale(0.120000)"> <use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="83.789062"/> @@ -588,13 +608,13 @@ </g> </g> <g id="ytick13"> -<g id="line2d59"> +<g id="line2d61"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="299.033766"/> </g></g> -<g id="line2d60"> +<g id="line2d62"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="299.033766"/> </g></g> -<g id="text29"> +<g id="text30"> <g style="fill: #000000; opacity: 1.000000" transform="translate(44.968750,303.400954)scale(0.120000)"> <use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="83.789062"/> @@ -603,13 +623,13 @@ </g> </g> <g id="ytick14"> -<g id="line2d61"> +<g id="line2d63"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="276.592208"/> </g></g> -<g id="line2d62"> +<g id="line2d64"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="276.592208"/> </g></g> -<g id="text30"> +<g id="text31"> <g style="fill: #000000; opacity: 1.000000" transform="translate(44.593750,280.959395)scale(0.120000)"> <use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="83.789062"/> @@ -618,13 +638,13 @@ </g> </g> <g id="ytick15"> -<g id="line2d63"> +<g id="line2d65"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="254.150649"/> </g></g> -<g id="line2d64"> +<g id="line2d66"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="254.150649"/> </g></g> -<g id="text31"> +<g id="text32"> <g style="fill: #000000; opacity: 1.000000" transform="translate(44.890625,258.517837)scale(0.120000)"> <use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="83.789062"/> @@ -633,13 +653,13 @@ </g> </g> <g id="ytick16"> -<g id="line2d65"> +<g id="line2d67"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m3400efa6b1638b3fea9e19e898273957" x="72.000000" y="231.709091"/> </g></g> -<g id="line2d66"> +<g id="line2d68"> <g ><use style="fill: none; stroke: #000000; stroke-width: 0.500000; stroke-linejoin: round; stroke-linecap: butt; opacity: 1.000000" xlink:href="#m20b58b2501143cb5e0a5e8f1ef6f1643" x="518.400000" y="231.709091"/> </g></g> -<g id="text32"> +<g id="text33"> <g style="fill: #000000; opacity: 1.000000" transform="translate(45.125000,236.076278)scale(0.120000)"> <use xlink:href="#c_6a8d56c819c37117ab4cf023bec22a5a"/> <use xlink:href="#c_cc8d6d580d1b10c8632f7a42cd53db8a" x="83.789062"/> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8274 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8274&view=rev Author: efiring Date: 2010年04月26日 21:11:03 +0000 (2010年4月26日) Log Message: ----------- axes: set _tight default to False; restore previous nonsingular expander Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2010年04月26日 20:37:14 UTC (rev 8273) +++ trunk/matplotlib/lib/matplotlib/axes.py 2010年04月26日 21:11:03 UTC (rev 8274) @@ -838,7 +838,7 @@ self._autoscaleYon = True self._xmargin = 0 self._ymargin = 0 - self._tight = True + self._tight = False self._update_transScale() # needed? self._get_lines = _process_plot_var_args(self) @@ -1722,7 +1722,8 @@ dl = [ax.dataLim for ax in xshared] bb = mtransforms.BboxBase.union(dl) x0, x1 = bb.intervalx - x0, x1 = mtransforms.nonsingular(x0, x1, increasing=False) + x0, x1 = mtransforms.nonsingular(x0, x1, increasing=False, + expander=0.05) if self._xmargin > 0: delta = (x1 - x0) * self._xmargin x0 -= delta @@ -1736,7 +1737,8 @@ dl = [ax.dataLim for ax in yshared] bb = mtransforms.BboxBase.union(dl) y0, y1 = bb.intervaly - y0, y1 = mtransforms.nonsingular(y0, y1, increasing=False) + y0, y1 = mtransforms.nonsingular(y0, y1, increasing=False, + expander=0.05) if self._ymargin > 0: delta = (y1 - y0) * self._ymargin y0 -= delta This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8273 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8273&view=rev Author: ryanmay Date: 2010年04月26日 20:37:14 +0000 (2010年4月26日) Log Message: ----------- Remove unused import. Modified Paths: -------------- trunk/matplotlib/examples/animation/dynamic_image_gtkagg.py Modified: trunk/matplotlib/examples/animation/dynamic_image_gtkagg.py =================================================================== --- trunk/matplotlib/examples/animation/dynamic_image_gtkagg.py 2010年04月26日 19:10:40 UTC (rev 8272) +++ trunk/matplotlib/examples/animation/dynamic_image_gtkagg.py 2010年04月26日 20:37:14 UTC (rev 8273) @@ -9,7 +9,6 @@ import matplotlib matplotlib.use('GTKAgg') -from matplotlib import rcParams from pylab import * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8272 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8272&view=rev Author: ryanmay Date: 2010年04月26日 19:10:40 +0000 (2010年4月26日) Log Message: ----------- Make the TimerBase start/stop implementations just simple pass instead of raising NotImplementedError. This allows creating the timers for BackendAgg, which can simplify some cases. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/backend_bases.py Modified: trunk/matplotlib/lib/matplotlib/backend_bases.py =================================================================== --- trunk/matplotlib/lib/matplotlib/backend_bases.py 2010年04月26日 19:10:18 UTC (rev 8271) +++ trunk/matplotlib/lib/matplotlib/backend_bases.py 2010年04月26日 19:10:40 UTC (rev 8272) @@ -930,14 +930,10 @@ self._timer_stop() def _timer_start(self): - #TODO: Could we potentially make a generic version through - #the use of Threads? - raise NotImplementedError('Needs to be implemented by subclass.') + pass def _timer_stop(self): - #TODO: Could we potentially make a generic version through - #the use of Threads? - raise NotImplementedError('Needs to be implemented by subclass.') + pass def _get_interval(self): return self._interval This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8271 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8271&view=rev Author: efiring Date: 2010年04月26日 19:10:18 +0000 (2010年4月26日) Log Message: ----------- hexbin tests: change to a sane baseline Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/hexbin_extent.pdf trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/hexbin_extent.png trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/hexbin_extent.svg Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2010年04月26日 18:49:47 UTC (rev 8270) +++ trunk/matplotlib/lib/matplotlib/axes.py 2010年04月26日 19:10:18 UTC (rev 8271) @@ -5951,7 +5951,7 @@ corners = ((xmin, ymin), (xmax, ymax)) self.update_datalim( corners) - self.autoscale_view() + self.autoscale_view(tight=True) # add the collection last self.add_collection(collection) Modified: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/hexbin_extent.pdf =================================================================== (Binary files differ) Modified: trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/hexbin_extent.png =================================================================== --- trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/hexbin_extent.png 2010年04月26日 18:49:47 UTC (rev 8270) +++ trunk/matplotlib/lib/matplotlib/tests/baseline_images/test_axes/hexbin_extent.png 2010年04月26日 19:10:18 UTC (rev 8271) @@ -1,199 +1,141 @@ \x89PNG
Revision: 8270 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8270&view=rev Author: efiring Date: 2010年04月26日 18:49:47 +0000 (2010年4月26日) Log Message: ----------- coding_guide: add instructions for running a single test (from Mike D.) Modified Paths: -------------- trunk/matplotlib/doc/devel/coding_guide.rst Modified: trunk/matplotlib/doc/devel/coding_guide.rst =================================================================== --- trunk/matplotlib/doc/devel/coding_guide.rst 2010年04月23日 18:34:32 UTC (rev 8269) +++ trunk/matplotlib/doc/devel/coding_guide.rst 2010年04月26日 18:49:47 UTC (rev 8270) @@ -637,6 +637,13 @@ import matplotlib matplotlib.test() +To run a single test from the command line, you can provide +a dot-separated path to the module and function, eg. +(this is assuming the test is installed):: + + nosetests matplotlib.tests.test_simplification:test_clipping + + Writing a simple test --------------------- This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8269 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8269&view=rev Author: mdboom Date: 2010年04月23日 18:34:32 +0000 (2010年4月23日) Log Message: ----------- Pass strings to FT2Font -- never Unicode strings. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py trunk/matplotlib/lib/matplotlib/backends/backend_ps.py trunk/matplotlib/lib/matplotlib/mathtext.py trunk/matplotlib/lib/matplotlib/textpath.py Modified: trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py =================================================================== --- trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py 2010年04月23日 18:33:51 UTC (rev 8268) +++ trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py 2010年04月23日 18:34:32 UTC (rev 8269) @@ -654,7 +654,7 @@ if 0: flags |= 1 << 17 # TODO: small caps if 0: flags |= 1 << 18 # TODO: force bold - ft2font = FT2Font(fontfile) + ft2font = FT2Font(str(fontfile)) descriptor = { 'Type': Name('FontDescriptor'), Modified: trunk/matplotlib/lib/matplotlib/backends/backend_ps.py =================================================================== --- trunk/matplotlib/lib/matplotlib/backends/backend_ps.py 2010年04月23日 18:33:51 UTC (rev 8268) +++ trunk/matplotlib/lib/matplotlib/backends/backend_ps.py 2010年04月23日 18:34:32 UTC (rev 8269) @@ -1104,7 +1104,7 @@ if not rcParams['ps.useafm']: for font_filename, chars in ps_renderer.used_characters.values(): if len(chars): - font = FT2Font(font_filename) + font = FT2Font(str(font_filename)) cmap = font.get_charmap() glyph_ids = [] for c in chars: Modified: trunk/matplotlib/lib/matplotlib/mathtext.py =================================================================== --- trunk/matplotlib/lib/matplotlib/mathtext.py 2010年04月23日 18:33:51 UTC (rev 8268) +++ trunk/matplotlib/lib/matplotlib/mathtext.py 2010年04月23日 18:34:32 UTC (rev 8269) @@ -597,7 +597,7 @@ cached_font = self._fonts.get(basename) if cached_font is None: - font = FT2Font(basename) + font = FT2Font(str(basename)) cached_font = self.CachedFont(font) self._fonts[basename] = cached_font self._fonts[font.postscript_name] = cached_font Modified: trunk/matplotlib/lib/matplotlib/textpath.py =================================================================== --- trunk/matplotlib/lib/matplotlib/textpath.py 2010年04月23日 18:33:51 UTC (rev 8268) +++ trunk/matplotlib/lib/matplotlib/textpath.py 2010年04月23日 18:34:32 UTC (rev 8269) @@ -311,7 +311,7 @@ if font_and_encoding is None: font_bunch = self.tex_font_map[dvifont.texname] - font = FT2Font(font_bunch.filename) + font = FT2Font(str(font_bunch.filename)) try: font.select_charmap(1094992451) # select ADOBE_CUSTOM except ValueError: This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8268 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8268&view=rev Author: mdboom Date: 2010年04月23日 18:33:51 +0000 (2010年4月23日) Log Message: ----------- Fix docstring formatting in imshow. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2010年04月22日 08:27:18 UTC (rev 8267) +++ trunk/matplotlib/lib/matplotlib/axes.py 2010年04月23日 18:33:51 UTC (rev 8268) @@ -6406,11 +6406,10 @@ *interpolation*: Acceptable values are *None*, 'nearest', 'bilinear', - 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', - 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', - 'bessel', 'mitchell', 'sinc', 'lanczos', + 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', + 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', + 'bessel', 'mitchell', 'sinc', 'lanczos' - If *interpolation* is *None*, default to rc ``image.interpolation``. See also the *filternorm* and *filterrad* parameters This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 8267 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8267&view=rev Author: efiring Date: 2010年04月22日 08:27:18 +0000 (2010年4月22日) Log Message: ----------- Axes.hist: remove unnecessary copying of input array. Modified Paths: -------------- trunk/matplotlib/lib/matplotlib/axes.py Modified: trunk/matplotlib/lib/matplotlib/axes.py =================================================================== --- trunk/matplotlib/lib/matplotlib/axes.py 2010年04月22日 07:49:13 UTC (rev 8266) +++ trunk/matplotlib/lib/matplotlib/axes.py 2010年04月22日 08:27:18 UTC (rev 8267) @@ -7289,17 +7289,16 @@ if isinstance(x, np.ndarray): # TODO: support masked arrays; - # Why is the copy needed? - x = np.array(x, copy=True, subok=False) + x = np.asarray(x) if x.ndim == 2: - x = x.T + x = x.T # 2-D input with columns as datasets; switch to rows elif x.ndim == 1: - x.shape = (1, x.shape[0]) + x = x.reshape(1, x.shape[0]) # new view, single row else: raise ValueError("x must be 1D or 2D") if x.shape[1] < x.shape[0]: - warnings.warn('2D hist input should be nsamples x nvariables; ' - 'this looks transposed') + warnings.warn('2D hist input should be nsamples x nvariables;\n ' + 'this looks transposed (shape is %d x %d)' % x.shape[::-1]) else: # multiple hist with data of different length x = [np.array(xi) for xi in x] This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.