SourceForge logo
SourceForge logo
Menu

matplotlib-checkins — Commit notification. DO NOT POST to this list, just subscribe to it.

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
(4)
2
3
(8)
4
(16)
5
(40)
6
(16)
7
(9)
8
(15)
9
(6)
10
(4)
11
(28)
12
(6)
13
(2)
14
(7)
15
(8)
16
17
18
(9)
19
(2)
20
(7)
21
(3)
22
(6)
23
(25)
24
(16)
25
(8)
26
(7)
27
(3)
28
(1)
29
(4)
30
(21)
31
(15)





Showing results of 296

1 2 3 .. 12 > >> (Page 1 of 12)
From: <md...@us...> - 2009年08月31日 20:10:45
Revision: 7621
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7621&view=rev
Author: mdboom
Date: 2009年08月31日 20:10:35 +0000 (2009年8月31日)
Log Message:
-----------
Add "draw_gouraud_triangles" (note the 's') backend method. Add initial support in Pdf backend (working in xpdf and evince, but not in acroread, strangely).
Modified Paths:
--------------
 trunk/matplotlib/lib/matplotlib/backend_bases.py
 trunk/matplotlib/lib/matplotlib/backends/backend_agg.py
 trunk/matplotlib/lib/matplotlib/backends/backend_mixed.py
 trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py
 trunk/matplotlib/lib/matplotlib/collections.py
 trunk/matplotlib/src/_backend_agg.cpp
 trunk/matplotlib/src/_backend_agg.h
Modified: trunk/matplotlib/lib/matplotlib/backend_bases.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/backend_bases.py	2009年08月31日 19:50:13 UTC (rev 7620)
+++ trunk/matplotlib/lib/matplotlib/backend_bases.py	2009年08月31日 20:10:35 UTC (rev 7621)
@@ -170,10 +170,31 @@
 """
 Draw a Gouraud-shaded triangle.
 
- EXPERIMENTAL
+ *points* is a 3x2 array of (x, y) points for the triangle.
+
+ *colors* is a 3x4 array of RGBA colors for each point of the
+ triangle.
+
+ *transform* is an affine transform to apply to the points.
 """
 raise NotImplementedError
 
+ def draw_gouraud_triangles(self, gc, triangles_array, colors_array,
+ transform):
+ """
+ Draws a series of Gouraud triangles.
+
+ *points* is a Nx3x2 array of (x, y) points for the trianglex.
+
+ *colors* is a Nx3x4 array of RGBA colors for each point of the
+ triangles.
+
+ *transform* is an affine transform to apply to the points.
+ """
+ transform = transform.frozen()
+ for tri, col in zip(triangles_array, colors_array):
+ self.draw_gouraud_triangle(gc, tri, col, transform)
+
 def _iter_collection_raw_paths(self, master_transform, paths,
 all_transforms):
 """
@@ -410,7 +431,7 @@
 
 def start_rasterizing(self):
 """
- Used in MixedModeRenderer. Switch to the raster renderer. 
+ Used in MixedModeRenderer. Switch to the raster renderer.
 """
 pass
 
@@ -425,7 +446,7 @@
 def start_filter(self):
 """
 Used in AggRenderer. Switch to a temporary renderer for image
- filtering effects. 
+ filtering effects.
 """
 pass
 
Modified: trunk/matplotlib/lib/matplotlib/backends/backend_agg.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/backends/backend_agg.py	2009年08月31日 19:50:13 UTC (rev 7620)
+++ trunk/matplotlib/lib/matplotlib/backends/backend_agg.py	2009年08月31日 20:10:35 UTC (rev 7621)
@@ -80,6 +80,7 @@
 self.draw_path_collection = self._renderer.draw_path_collection
 self.draw_quad_mesh = self._renderer.draw_quad_mesh
 self.draw_gouraud_triangle = self._renderer.draw_gouraud_triangle
+ self.draw_gouraud_triangles = self._renderer.draw_gouraud_triangles
 self.draw_image = self._renderer.draw_image
 self.copy_from_bbox = self._renderer.copy_from_bbox
 self.tostring_rgba_minimized = self._renderer.tostring_rgba_minimized
Modified: trunk/matplotlib/lib/matplotlib/backends/backend_mixed.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/backends/backend_mixed.py	2009年08月31日 19:50:13 UTC (rev 7620)
+++ trunk/matplotlib/lib/matplotlib/backends/backend_mixed.py	2009年08月31日 20:10:35 UTC (rev 7621)
@@ -58,7 +58,8 @@
 finalize flipy get_canvas_width_height get_image_magnification
 get_texmanager get_text_width_height_descent new_gc open_group
 option_image_nocomposite points_to_pixels strip_math
- start_filter stop_filter
+ start_filter stop_filter draw_gouraud_triangle
+ draw_gouraud_triangles
 """.split()
 def _set_current_renderer(self, renderer):
 self._renderer = renderer
Modified: trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py	2009年08月31日 19:50:13 UTC (rev 7620)
+++ trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py	2009年08月31日 20:10:35 UTC (rev 7621)
@@ -17,6 +17,7 @@
 from cStringIO import StringIO
 from datetime import datetime
 from math import ceil, cos, floor, pi, sin
+import struct
 try:
 set
 except NameError:
@@ -268,7 +269,7 @@
 gsave='q', grestore='Q',
 textpos='Td', selectfont='Tf', textmatrix='Tm',
 show='Tj', showkern='TJ',
- setlinewidth='w', clip='W')
+ setlinewidth='w', clip='W', shading='sh')
 
 Op = Bunch(**dict([(name, Operator(value))
 for name, value in _pdfops.items()]))
@@ -377,6 +378,7 @@
 self.fontObject = self.reserveObject('fonts')
 self.alphaStateObject = self.reserveObject('extended graphics states')
 self.hatchObject = self.reserveObject('tiling patterns')
+ self.gouraudObject = self.reserveObject('Gouraud triangles')
 self.XObjectObject = self.reserveObject('external objects')
 self.resourceObject = self.reserveObject('resources')
 
@@ -403,6 +405,7 @@
 self.nextAlphaState = 1
 self.hatchPatterns = {}
 self.nextHatch = 1
+ self.gouraudTriangles = []
 
 self.images = {}
 self.nextImage = 1
@@ -421,6 +424,7 @@
 'XObject': self.XObjectObject,
 'ExtGState': self.alphaStateObject,
 'Pattern': self.hatchObject,
+ 'Shading': self.gouraudObject,
 'ProcSet': procsets }
 self.writeObject(self.resourceObject, resources)
 
@@ -452,6 +456,7 @@
 dict([(val[0], val[1])
 for val in self.alphaStates.values()]))
 self.writeHatches()
+ self.writeGouraudTriangles()
 xobjects = dict(self.images.values())
 for tup in self.markers.values():
 xobjects[tup[0]] = tup[1]
@@ -1050,6 +1055,44 @@
 self.endStream()
 self.writeObject(self.hatchObject, hatchDict)
 
+ def addGouraudTriangles(self, points, colors):
+ name = Name('GT%d' % len(self.gouraudTriangles))
+ self.gouraudTriangles.append((name, points, colors))
+ return name
+
+ def writeGouraudTriangles(self):
+ gouraudDict = dict()
+ for name, points, colors in self.gouraudTriangles:
+ ob = self.reserveObject('Gouraud triangle')
+ gouraudDict[name] = ob
+ shape = points.shape
+ flat_points = points.reshape((shape[0] * shape[1], 2))
+ points_min = npy.min(flat_points, axis=0) - (1 << 8)
+ points_max = npy.max(flat_points, axis=0) + (1 << 8)
+ factor = float(0xffffffff) / (points_max - points_min)
+ adjpoints = npy.array((points - points_min) * factor, dtype=npy.uint32)
+ adjcolors = npy.array(colors * 255.0, dtype=npy.uint8)
+
+ self.beginStream(
+ ob.id, None,
+ { 'ShadingType': 4,
+ 'BitsPerCoordinate': 32,
+ 'BitsPerComponent': 8,
+ 'BitsPerFlag': 8,
+ 'ColorSpace': Name('DeviceRGB'),
+ 'AntiAlias': 1,
+ 'Decode': [points_min[0], points_max[0],
+ points_min[1], points_max[1],
+ 0, 1, 0, 1, 0, 1]
+ })
+
+ for tpoints, tcolors in zip(adjpoints, adjcolors):
+ for p, c in zip(tpoints, tcolors):
+ values = [int(x) for x in [0] + list(p) + list(c[:3])]
+ self.write(struct.pack('>BLLBBB', *values))
+ self.endStream()
+ self.writeObject(self.gouraudObject, gouraudDict)
+
 def imageObject(self, image):
 """Return name of an image XObject representing the given image."""
 
@@ -1326,6 +1369,18 @@
 lastx, lasty = x, y
 output(Op.grestore)
 
+ def draw_gouraud_triangle(self, gc, points, colors, trans):
+ self.draw_gouraud_triangles(gc, points.reshape((1, 3, 2)),
+ colors.reshape((1, 3, 4)), trans)
+
+ def draw_gouraud_triangles(self, gc, points, colors, trans):
+ shape = points.shape
+ points = points.reshape((shape[0] * shape[1], 2))
+ tpoints = trans.transform(points)
+ tpoints = tpoints.reshape(shape)
+ name = self.file.addGouraudTriangles(tpoints, colors)
+ self.file.output(name, Op.shading)
+
 def _setup_textpos(self, x, y, descent, angle, oldx=0, oldy=0, olddescent=0, oldangle=0):
 if angle == oldangle == 0:
 self.file.output(x - oldx, (y + descent) - (oldy + olddescent), Op.textpos)
Modified: trunk/matplotlib/lib/matplotlib/collections.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/collections.py	2009年08月31日 19:50:13 UTC (rev 7620)
+++ trunk/matplotlib/lib/matplotlib/collections.py	2009年08月31日 20:10:35 UTC (rev 7621)
@@ -1217,8 +1217,7 @@
 triangles, colors = self.convert_mesh_to_triangles(
 self._meshWidth, self._meshHeight, coordinates)
 check = {}
- for tri, col in zip(triangles, colors):
- renderer.draw_gouraud_triangle(gc, tri, col, transform.frozen())
+ renderer.draw_gouraud_triangles(gc, triangles, colors, transform.frozen())
 else:
 renderer.draw_quad_mesh(
 gc, transform.frozen(), self._meshWidth, self._meshHeight,
Modified: trunk/matplotlib/src/_backend_agg.cpp
===================================================================
--- trunk/matplotlib/src/_backend_agg.cpp	2009年08月31日 19:50:13 UTC (rev 7620)
+++ trunk/matplotlib/src/_backend_agg.cpp	2009年08月31日 20:10:35 UTC (rev 7621)
@@ -1455,21 +1455,14 @@
 return Py::Object();
 }
 
-Py::Object
-RendererAgg::draw_gouraud_triangle(const Py::Tuple& args) {
- _VERBOSE("RendererAgg::draw_quad_mesh");
- args.verify_length(4);
+void
+RendererAgg::_draw_gouraud_triangle(const GCAgg& gc,
+ const double* points, const double* colors, agg::trans_affine trans) {
 
 typedef agg::rgba8 color_t;
 typedef agg::span_gouraud_rgba<color_t> span_gen_t;
 typedef agg::span_allocator<color_t> span_alloc_t;
 
- //segments, trans, clipbox, colors, linewidths, antialiaseds
- GCAgg gc(args[0], dpi);
- Py::Object points_obj = args[1];
- Py::Object colors_obj = args[2];
- agg::trans_affine trans = py_to_agg_transformation_matrix(args[3].ptr());
-
 theRasterizer.reset_clipping();
 rendererBase.reset_clipping(true);
 set_clipbox(gc.cliprect, theRasterizer);
@@ -1477,6 +1470,43 @@
 trans *= agg::trans_affine_scaling(1.0, -1.0);
 trans *= agg::trans_affine_translation(0.0, (double)height);
 
+ double tpoints[6];
+
+ for (int i = 0; i < 6; i += 2) {
+ tpoints[i] = points[i];
+ tpoints[i+1] = points[i+1];
+ trans.transform(&tpoints[i], &tpoints[i+1]);
+ }
+
+ span_alloc_t span_alloc;
+ span_gen_t span_gen;
+
+ span_gen.colors(
+ agg::rgba(colors[0], colors[1], colors[2], colors[3]),
+ agg::rgba(colors[4], colors[5], colors[6], colors[7]),
+ agg::rgba(colors[8], colors[9], colors[10], colors[11]));
+ span_gen.triangle(
+ tpoints[0], tpoints[1],
+ tpoints[2], tpoints[3],
+ tpoints[4], tpoints[5],
+ 0.5);
+
+ theRasterizer.add_path(span_gen);
+ agg::render_scanlines_aa(
+ theRasterizer, slineP8, rendererBase, span_alloc, span_gen);
+}
+
+Py::Object
+RendererAgg::draw_gouraud_triangle(const Py::Tuple& args) {
+ _VERBOSE("RendererAgg::draw_gouraud_triangle");
+ args.verify_length(4);
+
+ //segments, trans, clipbox, colors, linewidths, antialiaseds
+ GCAgg gc(args[0], dpi);
+ Py::Object points_obj = args[1];
+ Py::Object colors_obj = args[2];
+ agg::trans_affine trans = py_to_agg_transformation_matrix(args[3].ptr());
+
 PyArrayObject* points = (PyArrayObject*)PyArray_ContiguousFromAny
 (points_obj.ptr(), PyArray_DOUBLE, 2, 2);
 if (!points ||
@@ -1490,32 +1520,57 @@
 throw Py::ValueError("colors must be a 3x4 numpy array");
 
 try {
- double* opoints = (double*)PyArray_DATA(points);
- double* c = (double*)PyArray_DATA(colors);
- double tpoints[6];
+ _draw_gouraud_triangle(
+ gc, (double*)PyArray_DATA(points), (double*)PyArray_DATA(colors), trans);
+ } catch (...) {
+ Py_DECREF(points);
+ Py_DECREF(colors);
 
- for (int i = 0; i < 6; i += 2) {
- tpoints[i] = opoints[i];
- tpoints[i+1] = opoints[i+1];
- trans.transform(&tpoints[i], &tpoints[i+1]);
- }
+ throw;
+ }
 
- span_alloc_t span_alloc;
- span_gen_t span_gen;
+ Py_DECREF(points);
+ Py_DECREF(colors);
 
- span_gen.colors(
- agg::rgba(c[0], c[1], c[2], c[3]),
- agg::rgba(c[4], c[5], c[6], c[7]),
- agg::rgba(c[8], c[9], c[10], c[11]));
- span_gen.triangle(
- tpoints[0], tpoints[1],
- tpoints[2], tpoints[3],
- tpoints[4], tpoints[5],
- 0.5);
+ return Py::Object();
+}
 
- theRasterizer.add_path(span_gen);
- agg::render_scanlines_aa(
- theRasterizer, slineP8, rendererBase, span_alloc, span_gen);
+Py::Object
+RendererAgg::draw_gouraud_triangles(const Py::Tuple& args) {
+ _VERBOSE("RendererAgg::draw_gouraud_triangles");
+ args.verify_length(4);
+
+ typedef agg::rgba8 color_t;
+ typedef agg::span_gouraud_rgba<color_t> span_gen_t;
+ typedef agg::span_allocator<color_t> span_alloc_t;
+
+ //segments, trans, clipbox, colors, linewidths, antialiaseds
+ GCAgg gc(args[0], dpi);
+ Py::Object points_obj = args[1];
+ Py::Object colors_obj = args[2];
+ agg::trans_affine trans = py_to_agg_transformation_matrix(args[3].ptr());
+
+ PyArrayObject* points = (PyArrayObject*)PyArray_ContiguousFromAny
+ (points_obj.ptr(), PyArray_DOUBLE, 3, 3);
+ if (!points ||
+ PyArray_DIM(points, 1) != 3 || PyArray_DIM(points, 2) != 2)
+ throw Py::ValueError("points must be a Nx3x2 numpy array");
+
+ PyArrayObject* colors = (PyArrayObject*)PyArray_ContiguousFromAny
+ (colors_obj.ptr(), PyArray_DOUBLE, 3, 3);
+ if (!colors ||
+ PyArray_DIM(colors, 1) != 3 || PyArray_DIM(colors, 2) != 4)
+ throw Py::ValueError("colors must be a Nx3x4 numpy array");
+
+ if (PyArray_DIM(points, 0) != PyArray_DIM(colors, 0)) {
+ throw Py::ValueError("points and colors arrays must be the same length");
+ }
+
+ try {
+ for (int i = 0; i < PyArray_DIM(points, 0); ++i) {
+ _draw_gouraud_triangle(
+ gc, (double*)PyArray_GETPTR1(points, i), (double*)PyArray_GETPTR1(colors, i), trans);
+ }
 } catch (...) {
 Py_DECREF(points);
 Py_DECREF(colors);
@@ -1870,6 +1925,8 @@
 		 "draw_quad_mesh(gc, master_transform, meshWidth, meshHeight, coordinates, offsets, offsetTrans, facecolors, antialiaseds, showedges)\n");
 add_varargs_method("draw_gouraud_triangle", &RendererAgg::draw_gouraud_triangle,
 		 "draw_gouraud_triangle(gc, points, colors, master_transform)\n");
+ add_varargs_method("draw_gouraud_triangles", &RendererAgg::draw_gouraud_triangles,
+		 "draw_gouraud_triangles(gc, points, colors, master_transform)\n");
 add_varargs_method("draw_markers", &RendererAgg::draw_markers,
 		 "draw_markers(gc, marker_path, marker_trans, path, rgbFace)\n");
 add_varargs_method("draw_text_image", &RendererAgg::draw_text_image,
Modified: trunk/matplotlib/src/_backend_agg.h
===================================================================
--- trunk/matplotlib/src/_backend_agg.h	2009年08月31日 19:50:13 UTC (rev 7620)
+++ trunk/matplotlib/src/_backend_agg.h	2009年08月31日 20:10:35 UTC (rev 7621)
@@ -165,6 +165,7 @@
 Py::Object draw_path_collection(const Py::Tuple & args);
 Py::Object draw_quad_mesh(const Py::Tuple& args);
 Py::Object draw_gouraud_triangle(const Py::Tuple& args);
+ Py::Object draw_gouraud_triangles(const Py::Tuple& args);
 
 Py::Object write_rgba(const Py::Tuple & args);
 Py::Object tostring_rgb(const Py::Tuple & args);
@@ -241,6 +242,11 @@
 const Py::SeqBase<Py::Object>& linestyles_obj,
 const Py::SeqBase<Py::Int>& antialiaseds);
 
+ void
+ _draw_gouraud_triangle(
+ const GCAgg& gc,
+ const double* points, const double* colors, agg::trans_affine trans);
+
 private:
 void create_alpha_buffers();
 };
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <he...@us...> - 2009年08月31日 19:50:24
Revision: 7620
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7620&view=rev
Author: heeres
Date: 2009年08月31日 19:50:13 +0000 (2009年8月31日)
Log Message:
-----------
Colormap work:
- Simplify data for existing colormaps
- Add a few colormaps
- Allow setting of gamma
- Allow using functions
Modified Paths:
--------------
 trunk/matplotlib/lib/matplotlib/_cm.py
 trunk/matplotlib/lib/matplotlib/cm.py
 trunk/matplotlib/lib/matplotlib/colors.py
Modified: trunk/matplotlib/lib/matplotlib/_cm.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/_cm.py	2009年08月31日 17:42:37 UTC (rev 7619)
+++ trunk/matplotlib/lib/matplotlib/_cm.py	2009年08月31日 19:50:13 UTC (rev 7620)
@@ -4,6 +4,8 @@
 
 """
 
+import numpy as np
+
 _binary_data = {
 'red' : ((0., 1., 1.), (1., 0., 0.)),
 'green': ((0., 1., 1.), (1., 0., 0.)),
@@ -32,96 +34,115 @@
 'green': ((0., 0., 0.),(1.0, 0.7812, 0.7812)),
 'blue': ((0., 0., 0.),(1.0, 0.4975, 0.4975))}
 
-_flag_data = {'red': ((0., 1., 1.),(0.015873, 1.000000, 1.000000),
- (0.031746, 0.000000, 0.000000),(0.047619, 0.000000, 0.000000),
- (0.063492, 1.000000, 1.000000),(0.079365, 1.000000, 1.000000),
- (0.095238, 0.000000, 0.000000),(0.111111, 0.000000, 0.000000),
- (0.126984, 1.000000, 1.000000),(0.142857, 1.000000, 1.000000),
- (0.158730, 0.000000, 0.000000),(0.174603, 0.000000, 0.000000),
- (0.190476, 1.000000, 1.000000),(0.206349, 1.000000, 1.000000),
- (0.222222, 0.000000, 0.000000),(0.238095, 0.000000, 0.000000),
- (0.253968, 1.000000, 1.000000),(0.269841, 1.000000, 1.000000),
- (0.285714, 0.000000, 0.000000),(0.301587, 0.000000, 0.000000),
- (0.317460, 1.000000, 1.000000),(0.333333, 1.000000, 1.000000),
- (0.349206, 0.000000, 0.000000),(0.365079, 0.000000, 0.000000),
- (0.380952, 1.000000, 1.000000),(0.396825, 1.000000, 1.000000),
- (0.412698, 0.000000, 0.000000),(0.428571, 0.000000, 0.000000),
- (0.444444, 1.000000, 1.000000),(0.460317, 1.000000, 1.000000),
- (0.476190, 0.000000, 0.000000),(0.492063, 0.000000, 0.000000),
- (0.507937, 1.000000, 1.000000),(0.523810, 1.000000, 1.000000),
- (0.539683, 0.000000, 0.000000),(0.555556, 0.000000, 0.000000),
- (0.571429, 1.000000, 1.000000),(0.587302, 1.000000, 1.000000),
- (0.603175, 0.000000, 0.000000),(0.619048, 0.000000, 0.000000),
- (0.634921, 1.000000, 1.000000),(0.650794, 1.000000, 1.000000),
- (0.666667, 0.000000, 0.000000),(0.682540, 0.000000, 0.000000),
- (0.698413, 1.000000, 1.000000),(0.714286, 1.000000, 1.000000),
- (0.730159, 0.000000, 0.000000),(0.746032, 0.000000, 0.000000),
- (0.761905, 1.000000, 1.000000),(0.777778, 1.000000, 1.000000),
- (0.793651, 0.000000, 0.000000),(0.809524, 0.000000, 0.000000),
- (0.825397, 1.000000, 1.000000),(0.841270, 1.000000, 1.000000),
- (0.857143, 0.000000, 0.000000),(0.873016, 0.000000, 0.000000),
- (0.888889, 1.000000, 1.000000),(0.904762, 1.000000, 1.000000),
- (0.920635, 0.000000, 0.000000),(0.936508, 0.000000, 0.000000),
- (0.952381, 1.000000, 1.000000),(0.968254, 1.000000, 1.000000),
- (0.984127, 0.000000, 0.000000),(1.0, 0., 0.)),
- 'green': ((0., 0., 0.),(0.015873, 1.000000, 1.000000),
- (0.031746, 0.000000, 0.000000),(0.063492, 0.000000, 0.000000),
- (0.079365, 1.000000, 1.000000),(0.095238, 0.000000, 0.000000),
- (0.126984, 0.000000, 0.000000),(0.142857, 1.000000, 1.000000),
- (0.158730, 0.000000, 0.000000),(0.190476, 0.000000, 0.000000),
- (0.206349, 1.000000, 1.000000),(0.222222, 0.000000, 0.000000),
- (0.253968, 0.000000, 0.000000),(0.269841, 1.000000, 1.000000),
- (0.285714, 0.000000, 0.000000),(0.317460, 0.000000, 0.000000),
- (0.333333, 1.000000, 1.000000),(0.349206, 0.000000, 0.000000),
- (0.380952, 0.000000, 0.000000),(0.396825, 1.000000, 1.000000),
- (0.412698, 0.000000, 0.000000),(0.444444, 0.000000, 0.000000),
- (0.460317, 1.000000, 1.000000),(0.476190, 0.000000, 0.000000),
- (0.507937, 0.000000, 0.000000),(0.523810, 1.000000, 1.000000),
- (0.539683, 0.000000, 0.000000),(0.571429, 0.000000, 0.000000),
- (0.587302, 1.000000, 1.000000),(0.603175, 0.000000, 0.000000),
- (0.634921, 0.000000, 0.000000),(0.650794, 1.000000, 1.000000),
- (0.666667, 0.000000, 0.000000),(0.698413, 0.000000, 0.000000),
- (0.714286, 1.000000, 1.000000),(0.730159, 0.000000, 0.000000),
- (0.761905, 0.000000, 0.000000),(0.777778, 1.000000, 1.000000),
- (0.793651, 0.000000, 0.000000),(0.825397, 0.000000, 0.000000),
- (0.841270, 1.000000, 1.000000),(0.857143, 0.000000, 0.000000),
- (0.888889, 0.000000, 0.000000),(0.904762, 1.000000, 1.000000),
- (0.920635, 0.000000, 0.000000),(0.952381, 0.000000, 0.000000),
- (0.968254, 1.000000, 1.000000),(0.984127, 0.000000, 0.000000),
- (1.0, 0., 0.)),
- 'blue': ((0., 0., 0.),(0.015873, 1.000000, 1.000000),
- (0.031746, 1.000000, 1.000000),(0.047619, 0.000000, 0.000000),
- (0.063492, 0.000000, 0.000000),(0.079365, 1.000000, 1.000000),
- (0.095238, 1.000000, 1.000000),(0.111111, 0.000000, 0.000000),
- (0.126984, 0.000000, 0.000000),(0.142857, 1.000000, 1.000000),
- (0.158730, 1.000000, 1.000000),(0.174603, 0.000000, 0.000000),
- (0.190476, 0.000000, 0.000000),(0.206349, 1.000000, 1.000000),
- (0.222222, 1.000000, 1.000000),(0.238095, 0.000000, 0.000000),
- (0.253968, 0.000000, 0.000000),(0.269841, 1.000000, 1.000000),
- (0.285714, 1.000000, 1.000000),(0.301587, 0.000000, 0.000000),
- (0.317460, 0.000000, 0.000000),(0.333333, 1.000000, 1.000000),
- (0.349206, 1.000000, 1.000000),(0.365079, 0.000000, 0.000000),
- (0.380952, 0.000000, 0.000000),(0.396825, 1.000000, 1.000000),
- (0.412698, 1.000000, 1.000000),(0.428571, 0.000000, 0.000000),
- (0.444444, 0.000000, 0.000000),(0.460317, 1.000000, 1.000000),
- (0.476190, 1.000000, 1.000000),(0.492063, 0.000000, 0.000000),
- (0.507937, 0.000000, 0.000000),(0.523810, 1.000000, 1.000000),
- (0.539683, 1.000000, 1.000000),(0.555556, 0.000000, 0.000000),
- (0.571429, 0.000000, 0.000000),(0.587302, 1.000000, 1.000000),
- (0.603175, 1.000000, 1.000000),(0.619048, 0.000000, 0.000000),
- (0.634921, 0.000000, 0.000000),(0.650794, 1.000000, 1.000000),
- (0.666667, 1.000000, 1.000000),(0.682540, 0.000000, 0.000000),
- (0.698413, 0.000000, 0.000000),(0.714286, 1.000000, 1.000000),
- (0.730159, 1.000000, 1.000000),(0.746032, 0.000000, 0.000000),
- (0.761905, 0.000000, 0.000000),(0.777778, 1.000000, 1.000000),
- (0.793651, 1.000000, 1.000000),(0.809524, 0.000000, 0.000000),
- (0.825397, 0.000000, 0.000000),(0.841270, 1.000000, 1.000000),
- (0.857143, 1.000000, 1.000000),(0.873016, 0.000000, 0.000000),
- (0.888889, 0.000000, 0.000000),(0.904762, 1.000000, 1.000000),
- (0.920635, 1.000000, 1.000000),(0.936508, 0.000000, 0.000000),
- (0.952381, 0.000000, 0.000000),(0.968254, 1.000000, 1.000000),
- (0.984127, 1.000000, 1.000000),(1.0, 0., 0.))}
+_flag_data = {
+ 'red': lambda x: 0.75 * np.sin((x * 31.5 + 0.25) * np.pi) + 0.5,
+ 'green': lambda x: np.sin(x * 31.5 * np.pi),
+ 'blue': lambda x: 0.75 * np.sin((x * 31.5 - 0.25) * np.pi) + 0.5,
+}
 
+_prism_data = {
+ 'red': lambda x: 0.75 * np.sin((x * 20.9 + 0.25) * np.pi) + 0.67,
+ 'green': lambda x: 0.75 * np.sin((x * 20.9 - 0.25) * np.pi) + 0.33,
+ 'blue': lambda x: -1.1 * np.sin((x * 20.9) * np.pi),
+}
+
+_bwr_data = ((0.0, 0.0, 1.0), (1.0, 1.0, 1.0), (1.0, 0.0, 0.0))
+_brg_data = ((0.0, 0.0, 1.0), (1.0, 0.0, 0.0), (0.0, 1.0, 0.0))
+
+# Gnuplot palette functions
+gfunc = {
+ 0: lambda x: 0,
+ 1: lambda x: 0.5,
+ 2: lambda x: 1,
+ 3: lambda x: x,
+ 4: lambda x: x**2,
+ 5: lambda x: x**3,
+ 6: lambda x: x**4,
+ 7: lambda x: np.sqrt(x),
+ 8: lambda x: np.sqrt(np.sqrt(x)),
+ 9: lambda x: np.sin(x * np.pi / 2),
+ 10: lambda x: np.cos(x * np.pi / 2),
+ 11: lambda x: np.abs(x - 0.5),
+ 12: lambda x: (2 * x - 1)**2,
+ 13: lambda x: np.sin(x * np.pi),
+ 14: lambda x: np.abs(np.cos(x * np.pi)),
+ 15: lambda x: np.sin(x * 2 * np.pi),
+ 16: lambda x: np.cos(x * 2 * np.pi),
+ 17: lambda x: np.abs(np.sin(x * 2 * np.pi)),
+ 18: lambda x: np.abs(np.cos(x * 2 * np.pi)),
+ 19: lambda x: np.abs(np.sin(x * 4 * np.pi)),
+ 20: lambda x: np.abs(np.cos(x * 4 * np.pi)),
+ 21: lambda x: 3 * x,
+ 22: lambda x: 3 * x - 1,
+ 23: lambda x: 3 * x - 2,
+ 24: lambda x: np.abs(3 * x - 1),
+ 25: lambda x: np.abs(3 * x - 2),
+ 26: lambda x: (3 * x - 1) / 2,
+ 27: lambda x: (3 * x - 2) / 2,
+ 28: lambda x: np.abs((3 * x - 1) / 2),
+ 29: lambda x: np.abs((3 * x - 2) / 2),
+ 30: lambda x: x / 0.32 - 0.78125,
+ 31: lambda x: 2 * x - 0.84,
+ 32: lambda x: gfunc32(x),
+ 33: lambda x: np.abs(2 * x - 0.5),
+ 34: lambda x: 2 * x,
+ 35: lambda x: 2 * x - 0.5,
+ 36: lambda x: 2 * x - 1.
+}
+
+def gfunc32(x):
+ ret = np.zeros(len(x))
+ m = (x < 0.25)
+ ret[m] = 4 * x[m]
+ m = (x >= 0.25) & (x < 0.92)
+ ret[m] = -2 * x[m] + 1.84
+ m = (x >= 0.92)
+ ret[m] = x[m] / 0.08 - 11.5
+ return ret
+
+_gnuplot_data = {
+ 'red': gfunc[7],
+ 'green': gfunc[5],
+ 'blue': gfunc[15],
+}
+
+_gnuplot2_data = {
+ 'red': gfunc[30],
+ 'green': gfunc[31],
+ 'blue': gfunc[32],
+}
+
+_ocean_data = {
+ 'red': gfunc[23],
+ 'green': gfunc[28],
+ 'blue': gfunc[3],
+}
+
+_afmhot_data = {
+ 'red': gfunc[34],
+ 'green': gfunc[35],
+ 'blue': gfunc[36],
+}
+
+_rainbow_data = {
+ 'red': gfunc[33],
+ 'green': gfunc[13],
+ 'blue': gfunc[10],
+}
+
+_seismic_data = (
+ (0.0, 0.0, 0.3), (0.0, 0.0, 1.0),
+ (1.0, 1.0, 1.0), (1.0, 0.0, 0.0),
+ (0.5, 0.0, 0.0))
+
+_terrain_data = (
+ (0.00, (0.2, 0.2, 0.6)),
+ (0.15, (0.0, 0.6, 1.0)),
+ (0.25, (0.0, 0.8, 0.4)),
+ (0.50, (1.0, 1.0, 0.6)),
+ (0.75, (0.5, 0.36, 0.33)),
+ (1.00, (1.0, 1.0, 1.0)))
+
 _gray_data = {'red': ((0., 0, 0), (1., 1, 1)),
 'green': ((0., 0, 0), (1., 1, 1)),
 'blue': ((0., 0, 0), (1., 1, 1))}
@@ -249,77 +270,6 @@
 (0.952381, 0.951711, 0.951711),(0.968254, 0.968075, 0.968075),
 (0.984127, 0.984167, 0.984167),(1.0, 1.0, 1.0))}
 
-_prism_data = {'red': ((0., 1., 1.),(0.031746, 1.000000, 1.000000),
- (0.047619, 0.000000, 0.000000),(0.063492, 0.000000, 0.000000),
- (0.079365, 0.666667, 0.666667),(0.095238, 1.000000, 1.000000),
- (0.126984, 1.000000, 1.000000),(0.142857, 0.000000, 0.000000),
- (0.158730, 0.000000, 0.000000),(0.174603, 0.666667, 0.666667),
- (0.190476, 1.000000, 1.000000),(0.222222, 1.000000, 1.000000),
- (0.238095, 0.000000, 0.000000),(0.253968, 0.000000, 0.000000),
- (0.269841, 0.666667, 0.666667),(0.285714, 1.000000, 1.000000),
- (0.317460, 1.000000, 1.000000),(0.333333, 0.000000, 0.000000),
- (0.349206, 0.000000, 0.000000),(0.365079, 0.666667, 0.666667),
- (0.380952, 1.000000, 1.000000),(0.412698, 1.000000, 1.000000),
- (0.428571, 0.000000, 0.000000),(0.444444, 0.000000, 0.000000),
- (0.460317, 0.666667, 0.666667),(0.476190, 1.000000, 1.000000),
- (0.507937, 1.000000, 1.000000),(0.523810, 0.000000, 0.000000),
- (0.539683, 0.000000, 0.000000),(0.555556, 0.666667, 0.666667),
- (0.571429, 1.000000, 1.000000),(0.603175, 1.000000, 1.000000),
- (0.619048, 0.000000, 0.000000),(0.634921, 0.000000, 0.000000),
- (0.650794, 0.666667, 0.666667),(0.666667, 1.000000, 1.000000),
- (0.698413, 1.000000, 1.000000),(0.714286, 0.000000, 0.000000),
- (0.730159, 0.000000, 0.000000),(0.746032, 0.666667, 0.666667),
- (0.761905, 1.000000, 1.000000),(0.793651, 1.000000, 1.000000),
- (0.809524, 0.000000, 0.000000),(0.825397, 0.000000, 0.000000),
- (0.841270, 0.666667, 0.666667),(0.857143, 1.000000, 1.000000),
- (0.888889, 1.000000, 1.000000),(0.904762, 0.000000, 0.000000),
- (0.920635, 0.000000, 0.000000),(0.936508, 0.666667, 0.666667),
- (0.952381, 1.000000, 1.000000),(0.984127, 1.000000, 1.000000),
- (1.0, 0.0, 0.0)),
- 'green': ((0., 0., 0.),(0.031746, 1.000000, 1.000000),
- (0.047619, 1.000000, 1.000000),(0.063492, 0.000000, 0.000000),
- (0.095238, 0.000000, 0.000000),(0.126984, 1.000000, 1.000000),
- (0.142857, 1.000000, 1.000000),(0.158730, 0.000000, 0.000000),
- (0.190476, 0.000000, 0.000000),(0.222222, 1.000000, 1.000000),
- (0.238095, 1.000000, 1.000000),(0.253968, 0.000000, 0.000000),
- (0.285714, 0.000000, 0.000000),(0.317460, 1.000000, 1.000000),
- (0.333333, 1.000000, 1.000000),(0.349206, 0.000000, 0.000000),
- (0.380952, 0.000000, 0.000000),(0.412698, 1.000000, 1.000000),
- (0.428571, 1.000000, 1.000000),(0.444444, 0.000000, 0.000000),
- (0.476190, 0.000000, 0.000000),(0.507937, 1.000000, 1.000000),
- (0.523810, 1.000000, 1.000000),(0.539683, 0.000000, 0.000000),
- (0.571429, 0.000000, 0.000000),(0.603175, 1.000000, 1.000000),
- (0.619048, 1.000000, 1.000000),(0.634921, 0.000000, 0.000000),
- (0.666667, 0.000000, 0.000000),(0.698413, 1.000000, 1.000000),
- (0.714286, 1.000000, 1.000000),(0.730159, 0.000000, 0.000000),
- (0.761905, 0.000000, 0.000000),(0.793651, 1.000000, 1.000000),
- (0.809524, 1.000000, 1.000000),(0.825397, 0.000000, 0.000000),
- (0.857143, 0.000000, 0.000000),(0.888889, 1.000000, 1.000000),
- (0.904762, 1.000000, 1.000000),(0.920635, 0.000000, 0.000000),
- (0.952381, 0.000000, 0.000000),(0.984127, 1.000000, 1.000000),
- (1.0, 1.0, 1.0)),
- 'blue': ((0., 0., 0.),(0.047619, 0.000000, 0.000000),
- (0.063492, 1.000000, 1.000000),(0.079365, 1.000000, 1.000000),
- (0.095238, 0.000000, 0.000000),(0.142857, 0.000000, 0.000000),
- (0.158730, 1.000000, 1.000000),(0.174603, 1.000000, 1.000000),
- (0.190476, 0.000000, 0.000000),(0.238095, 0.000000, 0.000000),
- (0.253968, 1.000000, 1.000000),(0.269841, 1.000000, 1.000000),
- (0.285714, 0.000000, 0.000000),(0.333333, 0.000000, 0.000000),
- (0.349206, 1.000000, 1.000000),(0.365079, 1.000000, 1.000000),
- (0.380952, 0.000000, 0.000000),(0.428571, 0.000000, 0.000000),
- (0.444444, 1.000000, 1.000000),(0.460317, 1.000000, 1.000000),
- (0.476190, 0.000000, 0.000000),(0.523810, 0.000000, 0.000000),
- (0.539683, 1.000000, 1.000000),(0.555556, 1.000000, 1.000000),
- (0.571429, 0.000000, 0.000000),(0.619048, 0.000000, 0.000000),
- (0.634921, 1.000000, 1.000000),(0.650794, 1.000000, 1.000000),
- (0.666667, 0.000000, 0.000000),(0.714286, 0.000000, 0.000000),
- (0.730159, 1.000000, 1.000000),(0.746032, 1.000000, 1.000000),
- (0.761905, 0.000000, 0.000000),(0.809524, 0.000000, 0.000000),
- (0.825397, 1.000000, 1.000000),(0.841270, 1.000000, 1.000000),
- (0.857143, 0.000000, 0.000000),(0.904762, 0.000000, 0.000000),
- (0.920635, 1.000000, 1.000000),(0.936508, 1.000000, 1.000000),
- (0.952381, 0.000000, 0.000000),(1.0, 0.0, 0.0))}
-
 _spring_data = {'red': ((0., 1., 1.),(1.0, 1.0, 1.0)),
 'green': ((0., 0., 0.),(1.0, 1.0, 1.0)),
 'blue': ((0., 1., 1.),(1.0, 0.0, 0.0))}
@@ -1470,4362 +1420,176 @@
 # an evolution of the GIST package, both by David H. Munro.
 # They are released under a BSD-like license (see LICENSE_YORICK in
 # the license directory of the matplotlib source distribution).
-_gist_earth_data = {'blue': [(0.0, 0.0, 0.0), (0.0042016808874905109,
-0.18039216101169586, 0.18039216101169586), (0.0084033617749810219,
-0.22745098173618317, 0.22745098173618317), (0.012605042196810246,
-0.27058824896812439, 0.27058824896812439), (0.016806723549962044,
-0.31764706969261169, 0.31764706969261169), (0.021008403971791267,
-0.36078432202339172, 0.36078432202339172), (0.025210084393620491,
-0.40784314274787903, 0.40784314274787903), (0.029411764815449715,
-0.45490196347236633, 0.45490196347236633), (0.033613447099924088,
-0.45490196347236633, 0.45490196347236633), (0.037815127521753311,
-0.45490196347236633, 0.45490196347236633), (0.042016807943582535,
-0.45490196347236633, 0.45490196347236633), (0.046218488365411758,
-0.45490196347236633, 0.45490196347236633), (0.050420168787240982,
-0.45882353186607361, 0.45882353186607361), (0.054621849209070206,
-0.45882353186607361, 0.45882353186607361), (0.058823529630899429,
-0.45882353186607361, 0.45882353186607361), (0.063025213778018951,
-0.45882353186607361, 0.45882353186607361), (0.067226894199848175,
-0.45882353186607361, 0.45882353186607361), (0.071428574621677399,
-0.46274510025978088, 0.46274510025978088), (0.075630255043506622,
-0.46274510025978088, 0.46274510025978088), (0.079831935465335846,
-0.46274510025978088, 0.46274510025978088), (0.08403361588716507,
-0.46274510025978088, 0.46274510025978088), (0.088235296308994293,
-0.46274510025978088, 0.46274510025978088), (0.092436976730823517,
-0.46666666865348816, 0.46666666865348816), (0.09663865715265274,
-0.46666666865348816, 0.46666666865348816), (0.10084033757448196,
-0.46666666865348816, 0.46666666865348816), (0.10504201799631119,
-0.46666666865348816, 0.46666666865348816), (0.10924369841814041,
-0.46666666865348816, 0.46666666865348816), (0.11344537883996964,
-0.47058823704719543, 0.47058823704719543), (0.11764705926179886,
-0.47058823704719543, 0.47058823704719543), (0.12184873968362808,
-0.47058823704719543, 0.47058823704719543), (0.1260504275560379,
-0.47058823704719543, 0.47058823704719543), (0.13025210797786713,
-0.47058823704719543, 0.47058823704719543), (0.13445378839969635,
-0.47450980544090271, 0.47450980544090271), (0.13865546882152557,
-0.47450980544090271, 0.47450980544090271), (0.1428571492433548,
-0.47450980544090271, 0.47450980544090271), (0.14705882966518402,
-0.47450980544090271, 0.47450980544090271), (0.15126051008701324,
-0.47450980544090271, 0.47450980544090271), (0.15546219050884247,
-0.47843137383460999, 0.47843137383460999), (0.15966387093067169,
-0.47843137383460999, 0.47843137383460999), (0.16386555135250092,
-0.47843137383460999, 0.47843137383460999), (0.16806723177433014,
-0.47843137383460999, 0.47843137383460999), (0.17226891219615936,
-0.47843137383460999, 0.47843137383460999), (0.17647059261798859,
-0.48235294222831726, 0.48235294222831726), (0.18067227303981781,
-0.48235294222831726, 0.48235294222831726), (0.18487395346164703,
-0.48235294222831726, 0.48235294222831726), (0.18907563388347626,
-0.48235294222831726, 0.48235294222831726), (0.19327731430530548,
-0.48235294222831726, 0.48235294222831726), (0.1974789947271347,
-0.48627451062202454, 0.48627451062202454), (0.20168067514896393,
-0.48627451062202454, 0.48627451062202454), (0.20588235557079315,
-0.48627451062202454, 0.48627451062202454), (0.21008403599262238,
-0.48627451062202454, 0.48627451062202454), (0.2142857164144516,
-0.48627451062202454, 0.48627451062202454), (0.21848739683628082,
-0.49019607901573181, 0.49019607901573181), (0.22268907725811005,
-0.49019607901573181, 0.49019607901573181), (0.22689075767993927,
-0.49019607901573181, 0.49019607901573181), (0.23109243810176849,
-0.49019607901573181, 0.49019607901573181), (0.23529411852359772,
-0.49019607901573181, 0.49019607901573181), (0.23949579894542694,
-0.49411764740943909, 0.49411764740943909), (0.24369747936725616,
-0.49411764740943909, 0.49411764740943909), (0.24789915978908539,
-0.49411764740943909, 0.49411764740943909), (0.25210085511207581,
-0.49411764740943909, 0.49411764740943909), (0.25630253553390503,
-0.49411764740943909, 0.49411764740943909), (0.26050421595573425,
-0.49803921580314636, 0.49803921580314636), (0.26470589637756348,
-0.49803921580314636, 0.49803921580314636), (0.2689075767993927,
-0.49803921580314636, 0.49803921580314636), (0.27310925722122192,
-0.49803921580314636, 0.49803921580314636), (0.27731093764305115,
-0.49803921580314636, 0.49803921580314636), (0.28151261806488037,
-0.50196081399917603, 0.50196081399917603), (0.28571429848670959,
-0.49411764740943909, 0.49411764740943909), (0.28991597890853882,
-0.49019607901573181, 0.49019607901573181), (0.29411765933036804,
-0.48627451062202454, 0.48627451062202454), (0.29831933975219727,
-0.48235294222831726, 0.48235294222831726), (0.30252102017402649,
-0.47843137383460999, 0.47843137383460999), (0.30672270059585571,
-0.47058823704719543, 0.47058823704719543), (0.31092438101768494,
-0.46666666865348816, 0.46666666865348816), (0.31512606143951416,
-0.46274510025978088, 0.46274510025978088), (0.31932774186134338,
-0.45882353186607361, 0.45882353186607361), (0.32352942228317261,
-0.45098039507865906, 0.45098039507865906), (0.32773110270500183,
-0.44705882668495178, 0.44705882668495178), (0.33193278312683105,
-0.44313725829124451, 0.44313725829124451), (0.33613446354866028,
-0.43529412150382996, 0.43529412150382996), (0.3403361439704895,
-0.43137255311012268, 0.43137255311012268), (0.34453782439231873,
-0.42745098471641541, 0.42745098471641541), (0.34873950481414795,
-0.42352941632270813, 0.42352941632270813), (0.35294118523597717,
-0.41568627953529358, 0.41568627953529358), (0.3571428656578064,
-0.4117647111415863, 0.4117647111415863), (0.36134454607963562,
-0.40784314274787903, 0.40784314274787903), (0.36554622650146484,
-0.40000000596046448, 0.40000000596046448), (0.36974790692329407,
-0.3960784375667572, 0.3960784375667572), (0.37394958734512329,
-0.39215686917304993, 0.39215686917304993), (0.37815126776695251,
-0.38431373238563538, 0.38431373238563538), (0.38235294818878174,
-0.3803921639919281, 0.3803921639919281), (0.38655462861061096,
-0.37647059559822083, 0.37647059559822083), (0.39075630903244019,
-0.36862745881080627, 0.36862745881080627), (0.39495798945426941,
-0.364705890417099, 0.364705890417099), (0.39915966987609863,
-0.36078432202339172, 0.36078432202339172), (0.40336135029792786,
-0.35294118523597717, 0.35294118523597717), (0.40756303071975708,
-0.3490196168422699, 0.3490196168422699), (0.4117647111415863,
-0.34509804844856262, 0.34509804844856262), (0.41596639156341553,
-0.33725491166114807, 0.33725491166114807), (0.42016807198524475,
-0.3333333432674408, 0.3333333432674408), (0.42436975240707397,
-0.32941177487373352, 0.32941177487373352), (0.4285714328289032,
-0.32156863808631897, 0.32156863808631897), (0.43277311325073242,
-0.31764706969261169, 0.31764706969261169), (0.43697479367256165,
-0.31372550129890442, 0.31372550129890442), (0.44117647409439087,
-0.30588236451148987, 0.30588236451148987), (0.44537815451622009,
-0.30196079611778259, 0.30196079611778259), (0.44957983493804932,
-0.29803922772407532, 0.29803922772407532), (0.45378151535987854,
-0.29019609093666077, 0.29019609093666077), (0.45798319578170776,
-0.28627452254295349, 0.28627452254295349), (0.46218487620353699,
-0.27843138575553894, 0.27843138575553894), (0.46638655662536621,
-0.27450981736183167, 0.27450981736183167), (0.47058823704719543,
-0.27843138575553894, 0.27843138575553894), (0.47478991746902466,
-0.28235295414924622, 0.28235295414924622), (0.47899159789085388,
-0.28235295414924622, 0.28235295414924622), (0.48319327831268311,
-0.28627452254295349, 0.28627452254295349), (0.48739495873451233,
-0.28627452254295349, 0.28627452254295349), (0.49159663915634155,
-0.29019609093666077, 0.29019609093666077), (0.49579831957817078,
-0.29411765933036804, 0.29411765933036804), (0.5, 0.29411765933036804,
-0.29411765933036804), (0.50420171022415161, 0.29803922772407532,
-0.29803922772407532), (0.50840336084365845, 0.29803922772407532,
-0.29803922772407532), (0.51260507106781006, 0.30196079611778259,
-0.30196079611778259), (0.51680672168731689, 0.30196079611778259,
-0.30196079611778259), (0.52100843191146851, 0.30588236451148987,
-0.30588236451148987), (0.52521008253097534, 0.30980393290519714,
-0.30980393290519714), (0.52941179275512695, 0.30980393290519714,
-0.30980393290519714), (0.53361344337463379, 0.31372550129890442,
-0.31372550129890442), (0.5378151535987854, 0.31372550129890442,
-0.31372550129890442), (0.54201680421829224, 0.31764706969261169,
-0.31764706969261169), (0.54621851444244385, 0.32156863808631897,
-0.32156863808631897), (0.55042016506195068, 0.32156863808631897,
-0.32156863808631897), (0.55462187528610229, 0.32156863808631897,
-0.32156863808631897), (0.55882352590560913, 0.32549020648002625,
-0.32549020648002625), (0.56302523612976074, 0.32549020648002625,
-0.32549020648002625), (0.56722688674926758, 0.32549020648002625,
-0.32549020648002625), (0.57142859697341919, 0.32941177487373352,
-0.32941177487373352), (0.57563024759292603, 0.32941177487373352,
-0.32941177487373352), (0.57983195781707764, 0.32941177487373352,
-0.32941177487373352), (0.58403360843658447, 0.3333333432674408,
-0.3333333432674408), (0.58823531866073608, 0.3333333432674408,
-0.3333333432674408), (0.59243696928024292, 0.3333333432674408,
-0.3333333432674408), (0.59663867950439453, 0.33725491166114807,
-0.33725491166114807), (0.60084033012390137, 0.33725491166114807,
-0.33725491166114807), (0.60504204034805298, 0.33725491166114807,
-0.33725491166114807), (0.60924369096755981, 0.34117648005485535,
-0.34117648005485535), (0.61344540119171143, 0.34117648005485535,
-0.34117648005485535), (0.61764705181121826, 0.34117648005485535,
-0.34117648005485535), (0.62184876203536987, 0.34509804844856262,
-0.34509804844856262), (0.62605041265487671, 0.34509804844856262,
-0.34509804844856262), (0.63025212287902832, 0.34509804844856262,
-0.34509804844856262), (0.63445377349853516, 0.3490196168422699,
-0.3490196168422699), (0.63865548372268677, 0.3490196168422699,
-0.3490196168422699), (0.6428571343421936, 0.3490196168422699,
-0.3490196168422699), (0.64705884456634521, 0.35294118523597717,
-0.35294118523597717), (0.65126049518585205, 0.35294118523597717,
-0.35294118523597717), (0.65546220541000366, 0.35294118523597717,
-0.35294118523597717), (0.6596638560295105, 0.35686275362968445,
-0.35686275362968445), (0.66386556625366211, 0.35686275362968445,
-0.35686275362968445), (0.66806721687316895, 0.35686275362968445,
-0.35686275362968445), (0.67226892709732056, 0.36078432202339172,
-0.36078432202339172), (0.67647057771682739, 0.36078432202339172,
-0.36078432202339172), (0.680672287940979, 0.36078432202339172,
-0.36078432202339172), (0.68487393856048584, 0.364705890417099,
-0.364705890417099), (0.68907564878463745, 0.364705890417099,
-0.364705890417099), (0.69327729940414429, 0.364705890417099,
-0.364705890417099), (0.6974790096282959, 0.36862745881080627,
-0.36862745881080627), (0.70168066024780273, 0.36862745881080627,
-0.36862745881080627), (0.70588237047195435, 0.36862745881080627,
-0.36862745881080627), (0.71008402109146118, 0.37254902720451355,
-0.37254902720451355), (0.71428573131561279, 0.37254902720451355,
-0.37254902720451355), (0.71848738193511963, 0.37254902720451355,
-0.37254902720451355), (0.72268909215927124, 0.37647059559822083,
-0.37647059559822083), (0.72689074277877808, 0.37647059559822083,
-0.37647059559822083), (0.73109245300292969, 0.3803921639919281,
-0.3803921639919281), (0.73529410362243652, 0.3803921639919281,
-0.3803921639919281), (0.73949581384658813, 0.3803921639919281,
-0.3803921639919281), (0.74369746446609497, 0.38431373238563538,
-0.38431373238563538), (0.74789917469024658, 0.38431373238563538,
-0.38431373238563538), (0.75210082530975342, 0.38431373238563538,
-0.38431373238563538), (0.75630253553390503, 0.38823530077934265,
-0.38823530077934265), (0.76050418615341187, 0.38823530077934265,
-0.38823530077934265), (0.76470589637756348, 0.38823530077934265,
-0.38823530077934265), (0.76890754699707031, 0.39215686917304993,
-0.39215686917304993), (0.77310925722122192, 0.39215686917304993,
-0.39215686917304993), (0.77731090784072876, 0.39215686917304993,
-0.39215686917304993), (0.78151261806488037, 0.3960784375667572,
-0.3960784375667572), (0.78571426868438721, 0.3960784375667572,
-0.3960784375667572), (0.78991597890853882, 0.40784314274787903,
-0.40784314274787903), (0.79411762952804565, 0.41568627953529358,
-0.41568627953529358), (0.79831933975219727, 0.42352941632270813,
-0.42352941632270813), (0.8025209903717041, 0.43529412150382996,
-0.43529412150382996), (0.80672270059585571, 0.44313725829124451,
-0.44313725829124451), (0.81092435121536255, 0.45490196347236633,
-0.45490196347236633), (0.81512606143951416, 0.46274510025978088,
-0.46274510025978088), (0.819327712059021, 0.47450980544090271,
-0.47450980544090271), (0.82352942228317261, 0.48235294222831726,
-0.48235294222831726), (0.82773107290267944, 0.49411764740943909,
-0.49411764740943909), (0.83193278312683105, 0.5058823823928833,
-0.5058823823928833), (0.83613443374633789, 0.51372551918029785,
-0.51372551918029785), (0.8403361439704895, 0.52549022436141968,
-0.52549022436141968), (0.84453779458999634, 0.5372549295425415,
-0.5372549295425415), (0.84873950481414795, 0.54509806632995605,
-0.54509806632995605), (0.85294115543365479, 0.55686277151107788,
-0.55686277151107788), (0.8571428656578064, 0.56862747669219971,
-0.56862747669219971), (0.86134451627731323, 0.58039218187332153,
-0.58039218187332153), (0.86554622650146484, 0.58823531866073608,
-0.58823531866073608), (0.86974787712097168, 0.60000002384185791,
-0.60000002384185791), (0.87394958734512329, 0.61176472902297974,
-0.61176472902297974), (0.87815123796463013, 0.62352943420410156,
-0.62352943420410156), (0.88235294818878174, 0.63529413938522339,
-0.63529413938522339), (0.88655459880828857, 0.64705884456634521,
-0.64705884456634521), (0.89075630903244019, 0.65882354974746704,
-0.65882354974746704), (0.89495795965194702, 0.66666668653488159,
-0.66666668653488159), (0.89915966987609863, 0.67843139171600342,
-0.67843139171600342), (0.90336132049560547, 0.69019609689712524,
-0.69019609689712524), (0.90756303071975708, 0.70196080207824707,
-0.70196080207824707), (0.91176468133926392, 0.7137255072593689,
-0.7137255072593689), (0.91596639156341553, 0.72549021244049072,
-0.72549021244049072), (0.92016804218292236, 0.74117648601531982,
-0.74117648601531982), (0.92436975240707397, 0.75294119119644165,
-0.75294119119644165), (0.92857140302658081, 0.76470589637756348,
-0.76470589637756348), (0.93277311325073242, 0.7764706015586853,
-0.7764706015586853), (0.93697476387023926, 0.78823530673980713,
-0.78823530673980713), (0.94117647409439087, 0.80000001192092896,
-0.80000001192092896), (0.94537812471389771, 0.81176471710205078,
-0.81176471710205078), (0.94957983493804932, 0.82745099067687988,
-0.82745099067687988), (0.95378148555755615, 0.83921569585800171,
-0.83921569585800171), (0.95798319578170776, 0.85098040103912354,
-0.85098040103912354), (0.9621848464012146, 0.86274510622024536,
-0.86274510622024536), (0.96638655662536621, 0.87843137979507446,
-0.87843137979507446), (0.97058820724487305, 0.89019608497619629,
-0.89019608497619629), (0.97478991746902466, 0.90196079015731812,
-0.90196079015731812), (0.97899156808853149, 0.91764706373214722,
-0.91764706373214722), (0.98319327831268311, 0.92941176891326904,
-0.92941176891326904), (0.98739492893218994, 0.94509804248809814,
-0.94509804248809814), (0.99159663915634155, 0.95686274766921997,
-0.95686274766921997), (0.99579828977584839, 0.97254902124404907,
-0.97254902124404907), (1.0, 0.9843137264251709, 0.9843137264251709)],
-'green': [(0.0, 0.0, 0.0), (0.0042016808874905109, 0.0, 0.0),
-(0.0084033617749810219, 0.0, 0.0), (0.012605042196810246, 0.0, 0.0),
-(0.016806723549962044, 0.0, 0.0), (0.021008403971791267, 0.0, 0.0),
-(0.025210084393620491, 0.0, 0.0), (0.029411764815449715, 0.0, 0.0),
-(0.033613447099924088, 0.011764706112444401, 0.011764706112444401),
-(0.037815127521753311, 0.023529412224888802, 0.023529412224888802),
-(0.042016807943582535, 0.031372550874948502, 0.031372550874948502),
-(0.046218488365411758, 0.043137256056070328, 0.043137256056070328),
-(0.050420168787240982, 0.050980392843484879, 0.050980392843484879),
-(0.054621849209070206, 0.062745101749897003, 0.062745101749897003),
-(0.058823529630899429, 0.070588238537311554, 0.070588238537311554),
-(0.063025213778018951, 0.08235294371843338, 0.08235294371843338),
-(0.067226894199848175, 0.090196080505847931, 0.090196080505847931),
-(0.071428574621677399, 0.10196078568696976, 0.10196078568696976),
-(0.075630255043506622, 0.10980392247438431, 0.10980392247438431),
-(0.079831935465335846, 0.12156862765550613, 0.12156862765550613),
-(0.08403361588716507, 0.12941177189350128, 0.12941177189350128),
-(0.088235296308994293, 0.14117647707462311, 0.14117647707462311),
-(0.092436976730823517, 0.14901961386203766, 0.14901961386203766),
-(0.09663865715265274, 0.16078431904315948, 0.16078431904315948),
-(0.10084033757448196, 0.16862745583057404, 0.16862745583057404),
-(0.10504201799631119, 0.17647059261798859, 0.17647059261798859),
-(0.10924369841814041, 0.18823529779911041, 0.18823529779911041),
-(0.11344537883996964, 0.19607843458652496, 0.19607843458652496),
-(0.11764705926179886, 0.20392157137393951, 0.20392157137393951),
-(0.12184873968362808, 0.21568627655506134, 0.21568627655506134),
-(0.1260504275560379, 0.22352941334247589, 0.22352941334247589),
-(0.13025210797786713, 0.23137255012989044, 0.23137255012989044),
-(0.13445378839969635, 0.23921568691730499, 0.23921568691730499),
-(0.13865546882152557, 0.25098040699958801, 0.25098040699958801),
-(0.1428571492433548, 0.25882354378700256, 0.25882354378700256),
-(0.14705882966518402, 0.26666668057441711, 0.26666668057441711),
-(0.15126051008701324, 0.27450981736183167, 0.27450981736183167),
-(0.15546219050884247, 0.28235295414924622, 0.28235295414924622),
-(0.15966387093067169, 0.29019609093666077, 0.29019609093666077),
-(0.16386555135250092, 0.30196079611778259, 0.30196079611778259),
-(0.16806723177433014, 0.30980393290519714, 0.30980393290519714),
-(0.17226891219615936, 0.31764706969261169, 0.31764706969261169),
-(0.17647059261798859, 0.32549020648002625, 0.32549020648002625),
-(0.18067227303981781, 0.3333333432674408, 0.3333333432674408),
-(0.18487395346164703, 0.34117648005485535, 0.34117648005485535),
-(0.18907563388347626, 0.3490196168422699, 0.3490196168422699),
-(0.19327731430530548, 0.35686275362968445, 0.35686275362968445),
-(0.1974789947271347, 0.364705890417099, 0.364705890417099),
-(0.20168067514896393, 0.37254902720451355, 0.37254902720451355),
-(0.20588235557079315, 0.3803921639919281, 0.3803921639919281),
-(0.21008403599262238, 0.38823530077934265, 0.38823530077934265),
-(0.2142857164144516, 0.39215686917304993, 0.39215686917304993),
-(0.21848739683628082, 0.40000000596046448, 0.40000000596046448),
-(0.22268907725811005, 0.40784314274787903, 0.40784314274787903),
-(0.22689075767993927, 0.41568627953529358, 0.41568627953529358),
-(0.23109243810176849, 0.42352941632270813, 0.42352941632270813),
-(0.23529411852359772, 0.42745098471641541, 0.42745098471641541),
-(0.23949579894542694, 0.43529412150382996, 0.43529412150382996),
-(0.24369747936725616, 0.44313725829124451, 0.44313725829124451),
-(0.24789915978908539, 0.45098039507865906, 0.45098039507865906),
-(0.25210085511207581, 0.45490196347236633, 0.45490196347236633),
-(0.25630253553390503, 0.46274510025978088, 0.46274510025978088),
-(0.26050421595573425, 0.47058823704719543, 0.47058823704719543),
-(0.26470589637756348, 0.47450980544090271, 0.47450980544090271),
-(0.2689075767993927, 0.48235294222831726, 0.48235294222831726),
-(0.27310925722122192, 0.49019607901573181, 0.49019607901573181),
-(0.27731093764305115, 0.49411764740943909, 0.49411764740943909),
-(0.28151261806488037, 0.50196081399917603, 0.50196081399917603),
-(0.28571429848670959, 0.50196081399917603, 0.50196081399917603),
-(0.28991597890853882, 0.5058823823928833, 0.5058823823928833),
-(0.29411765933036804, 0.5058823823928833, 0.5058823823928833),
-(0.29831933975219727, 0.50980395078659058, 0.50980395078659058),
-(0.30252102017402649, 0.51372551918029785, 0.51372551918029785),
-(0.30672270059585571, 0.51372551918029785, 0.51372551918029785),
-(0.31092438101768494, 0.51764708757400513, 0.51764708757400513),
-(0.31512606143951416, 0.5215686559677124, 0.5215686559677124),
-(0.31932774186134338, 0.5215686559677124, 0.5215686559677124),
-(0.32352942228317261, 0.52549022436141968, 0.52549022436141968),
-(0.32773110270500183, 0.52549022436141968, 0.52549022436141968),
-(0.33193278312683105, 0.52941179275512695, 0.52941179275512695),
-(0.33613446354866028, 0.53333336114883423, 0.53333336114883423),
-(0.3403361439704895, 0.53333336114883423, 0.53333336114883423),
-(0.34453782439231873, 0.5372549295425415, 0.5372549295425415),
-(0.34873950481414795, 0.54117649793624878, 0.54117649793624878),
-(0.35294118523597717, 0.54117649793624878, 0.54117649793624878),
-(0.3571428656578064, 0.54509806632995605, 0.54509806632995605),
-(0.36134454607963562, 0.54901963472366333, 0.54901963472366333),
-(0.36554622650146484, 0.54901963472366333, 0.54901963472366333),
-(0.36974790692329407, 0.55294120311737061, 0.55294120311737061),
-(0.37394958734512329, 0.55294120311737061, 0.55294120311737061),
-(0.37815126776695251, 0.55686277151107788, 0.55686277151107788),
-(0.38235294818878174, 0.56078433990478516, 0.56078433990478516),
-(0.38655462861061096, 0.56078433990478516, 0.56078433990478516),
-(0.39075630903244019, 0.56470590829849243, 0.56470590829849243),
-(0.39495798945426941, 0.56862747669219971, 0.56862747669219971),
-(0.39915966987609863, 0.56862747669219971, 0.56862747669219971),
-(0.40336135029792786, 0.57254904508590698, 0.57254904508590698),
-(0.40756303071975708, 0.57254904508590698, 0.57254904508590698),
-(0.4117647111415863, 0.57647061347961426, 0.57647061347961426),
-(0.41596639156341553, 0.58039218187332153, 0.58039218187332153),
-(0.42016807198524475, 0.58039218187332153, 0.58039218187332153),
-(0.42436975240707397, 0.58431375026702881, 0.58431375026702881),
-(0.4285714328289032, 0.58823531866073608, 0.58823531866073608),
-(0.43277311325073242, 0.58823531866073608, 0.58823531866073608),
-(0.43697479367256165, 0.59215688705444336, 0.59215688705444336),
-(0.44117647409439087, 0.59215688705444336, 0.59215688705444336),
-(0.44537815451622009, 0.59607845544815063, 0.59607845544815063),
-(0.44957983493804932, 0.60000002384185791, 0.60000002384185791),
-(0.45378151535987854, 0.60000002384185791, 0.60000002384185791),
-(0.45798319578170776, 0.60392159223556519, 0.60392159223556519),
-(0.46218487620353699, 0.60784316062927246, 0.60784316062927246),
-(0.46638655662536621, 0.60784316062927246, 0.60784316062927246),
-(0.47058823704719543, 0.61176472902297974, 0.61176472902297974),
-(0.47478991746902466, 0.61176472902297974, 0.61176472902297974),
-(0.47899159789085388, 0.61568629741668701, 0.61568629741668701),
-(0.48319327831268311, 0.61960786581039429, 0.61960786581039429),
-(0.48739495873451233, 0.61960786581039429, 0.61960786581039429),
-(0.49159663915634155, 0.62352943420410156, 0.62352943420410156),
-(0.49579831957817078, 0.62745100259780884, 0.62745100259780884), (0.5,
-0.62745100259780884, 0.62745100259780884), (0.50420171022415161,
-0.63137257099151611, 0.63137257099151611), (0.50840336084365845,
-0.63137257099151611, 0.63137257099151611), (0.51260507106781006,
-0.63529413938522339, 0.63529413938522339), (0.51680672168731689,
-0.63921570777893066, 0.63921570777893066), (0.52100843191146851,
-0.63921570777893066, 0.63921570777893066), (0.52521008253097534,
-0.64313727617263794, 0.64313727617263794), (0.52941179275512695,
-0.64705884456634521, 0.64705884456634521), (0.53361344337463379,
-0.64705884456634521, 0.64705884456634521), (0.5378151535987854,
-0.65098041296005249, 0.65098041296005249), (0.54201680421829224,
-0.65098041296005249, 0.65098041296005249), (0.54621851444244385,
-0.65490198135375977, 0.65490198135375977), (0.55042016506195068,
-0.65882354974746704, 0.65882354974746704), (0.55462187528610229,
-0.65882354974746704, 0.65882354974746704), (0.55882352590560913,
-0.65882354974746704, 0.65882354974746704), (0.56302523612976074,
-0.66274511814117432, 0.66274511814117432), (0.56722688674926758,
-0.66274511814117432, 0.66274511814117432), (0.57142859697341919,
-0.66666668653488159, 0.66666668653488159), (0.57563024759292603,
-0.66666668653488159, 0.66666668653488159), (0.57983195781707764,
-0.67058825492858887, 0.67058825492858887), (0.58403360843658447,
-0.67058825492858887, 0.67058825492858887), (0.58823531866073608,
-0.67450982332229614, 0.67450982332229614), (0.59243696928024292,
-0.67450982332229614, 0.67450982332229614), (0.59663867950439453,
-0.67450982332229614, 0.67450982332229614), (0.60084033012390137,
-0.67843139171600342, 0.67843139171600342), (0.60504204034805298,
-0.67843139171600342, 0.67843139171600342), (0.60924369096755981,
-0.68235296010971069, 0.68235296010971069), (0.61344540119171143,
-0.68235296010971069, 0.68235296010971069), (0.61764705181121826,
-0.68627452850341797, 0.68627452850341797), (0.62184876203536987,
-0.68627452850341797, 0.68627452850341797), (0.62605041265487671,
-0.68627452850341797, 0.68627452850341797), (0.63025212287902832,
-0.69019609689712524, 0.69019609689712524), (0.63445377349853516,
-0.69019609689712524, 0.69019609689712524), (0.63865548372268677,
-0.69411766529083252, 0.69411766529083252), (0.6428571343421936,
-0.69411766529083252, 0.69411766529083252), (0.64705884456634521,
-0.69803923368453979, 0.69803923368453979), (0.65126049518585205,
-0.69803923368453979, 0.69803923368453979), (0.65546220541000366,
-0.70196080207824707, 0.70196080207824707), (0.6596638560295105,
-0.70196080207824707, 0.70196080207824707), (0.66386556625366211,
-0.70196080207824707, 0.70196080207824707), (0.66806721687316895,
-0.70588237047195435, 0.70588237047195435), (0.67226892709732056,
-0.70588237047195435, 0.70588237047195435), (0.67647057771682739,
-0.70980393886566162, 0.70980393886566162), (0.680672287940979,
-0.70980393886566162, 0.70980393886566162), (0.68487393856048584,
-0.7137255072593689, 0.7137255072593689), (0.68907564878463745,
-0.7137255072593689, 0.7137255072593689), (0.69327729940414429,
-0.71764707565307617, 0.71764707565307617), (0.6974790096282959,
-0.71764707565307617, 0.71764707565307617), (0.70168066024780273,
-0.7137255072593689, 0.7137255072593689), (0.70588237047195435,
-0.70980393886566162, 0.70980393886566162), (0.71008402109146118,
-0.70980393886566162, 0.70980393886566162), (0.71428573131561279,
-0.70588237047195435, 0.70588237047195435), (0.71848738193511963,
-0.70196080207824707, 0.70196080207824707), (0.72268909215927124,
-0.69803923368453979, 0.69803923368453979), (0.72689074277877808,
-0.69411766529083252, 0.69411766529083252), (0.73109245300292969,
-0.69019609689712524, 0.69019609689712524), (0.73529410362243652,
-0.68627452850341797, 0.68627452850341797), (0.73949581384658813,
-0.68235296010971069, 0.68235296010971069), (0.74369746446609497,
-0.67843139171600342, 0.67843139171600342), (0.74789917469024658,
-0.67450982332229614, 0.67450982332229614), (0.75210082530975342,
-0.67058825492858887, 0.67058825492858887), (0.75630253553390503,
-0.66666668653488159, 0.66666668653488159), (0.76050418615341187,
-0.66274511814117432, 0.66274511814117432), (0.76470589637756348,
-0.65882354974746704, 0.65882354974746704), (0.76890754699707031,
-0.65490198135375977, 0.65490198135375977), (0.77310925722122192,
-0.65098041296005249, 0.65098041296005249), (0.77731090784072876,
-0.64705884456634521, 0.64705884456634521), (0.78151261806488037,
-0.64313727617263794, 0.64313727617263794), (0.78571426868438721,
-0.63921570777893066, 0.63921570777893066), (0.78991597890853882,
-0.63921570777893066, 0.63921570777893066), (0.79411762952804565,
-0.64313727617263794, 0.64313727617263794), (0.79831933975219727,
-0.64313727617263794, 0.64313727617263794), (0.8025209903717041,
-0.64705884456634521, 0.64705884456634521), (0.80672270059585571,
-0.64705884456634521, 0.64705884456634521), (0.81092435121536255,
-0.65098041296005249, 0.65098041296005249), (0.81512606143951416,
-0.65490198135375977, 0.65490198135375977), (0.819327712059021,
-0.65490198135375977, 0.65490198135375977), (0.82352942228317261,
-0.65882354974746704, 0.65882354974746704), (0.82773107290267944,
-0.66274511814117432, 0.66274511814117432), (0.83193278312683105,
-0.66666668653488159, 0.66666668653488159), (0.83613443374633789,
-0.67058825492858887, 0.67058825492858887), (0.8403361439704895,
-0.67450982332229614, 0.67450982332229614), (0.84453779458999634,
-0.67843139171600342, 0.67843139171600342), (0.84873950481414795,
-0.68235296010971069, 0.68235296010971069), (0.85294115543365479,
-0.68627452850341797, 0.68627452850341797), (0.8571428656578064,
-0.69019609689712524, 0.69019609689712524), (0.86134451627731323,
-0.69411766529083252, 0.69411766529083252), (0.86554622650146484,
-0.69803923368453979, 0.69803923368453979), (0.86974787712097168,
-0.70196080207824707, 0.70196080207824707), (0.87394958734512329,
-0.70980393886566162, 0.70980393886566162), (0.87815123796463013,
-0.7137255072593689, 0.7137255072593689), (0.88235294818878174,
-0.72156864404678345, 0.72156864404678345), (0.88655459880828857,
-0.72549021244049072, 0.72549021244049072), (0.89075630903244019,
-0.73333334922790527, 0.73333334922790527), (0.89495795965194702,
-0.73725491762161255, 0.73725491762161255), (0.89915966987609863,
-0.7450980544090271, 0.7450980544090271), (0.90336132049560547,
-0.75294119119644165, 0.75294119119644165), (0.90756303071975708,
-0.7607843279838562, 0.7607843279838562), (0.91176468133926392,
-0.76862746477127075, 0.76862746477127075), (0.91596639156341553,
-0.7764706015586853, 0.7764706015586853), (0.92016804218292236,
-0.78431373834609985, 0.78431373834609985), (0.92436975240707397,
-0.7921568751335144, 0.7921568751335144), (0.92857140302658081,
-0.80000001192092896, 0.80000001192092896), (0.93277311325073242,
-0.80784314870834351, 0.80784314870834351), (0.93697476387023926,
-0.81568628549575806, 0.81568628549575806), (0.94117647409439087,
-0.82745099067687988, 0.82745099067687988), (0.94537812471389771,
-0.83529412746429443, 0.83529412746429443), (0.94957983493804932,
-0.84313726425170898, 0.84313726425170898), (0.95378148555755615,
-0.85490196943283081, 0.85490196943283081), (0.95798319578170776,
-0.86666667461395264, 0.86666667461395264), (0.9621848464012146,
-0.87450981140136719, 0.87450981140136719), (0.96638655662536621,
-0.88627451658248901, 0.88627451658248901), (0.97058820724487305,
-0.89803922176361084, 0.89803922176361084), (0.97478991746902466,
-0.90980392694473267, 0.90980392694473267), (0.97899156808853149,
-0.92156863212585449, 0.92156863212585449), (0.98319327831268311,
-0.93333333730697632, 0.93333333730697632), (0.98739492893218994,
-0.94509804248809814, 0.94509804248809814), (0.99159663915634155,
-0.95686274766921997, 0.95686274766921997), (0.99579828977584839,
-0.97254902124404907, 0.97254902124404907), (1.0, 0.9843137264251709,
-0.9843137264251709)], 'red': [(0.0, 0.0, 0.0), (0.0042016808874905109,
-0.0, 0.0), (0.0084033617749810219, 0.0, 0.0), (0.012605042196810246, 0.0,
-0.0), (0.016806723549962044, 0.0, 0.0), (0.021008403971791267, 0.0, 0.0),
-(0.025210084393620491, 0.0, 0.0), (0.029411764815449715, 0.0, 0.0),
-(0.033613447099924088, 0.0, 0.0), (0.037815127521753311,
-0.0039215688593685627, 0.0039215688593685627), (0.042016807943582535,
-0.0078431377187371254, 0.0078431377187371254), (0.046218488365411758,
-0.0078431377187371254, 0.0078431377187371254), (0.050420168787240982,
-0.011764706112444401, 0.011764706112444401), (0.054621849209070206,
-0.015686275437474251, 0.015686275437474251), (0.058823529630899429,
-0.019607843831181526, 0.019607843831181526), (0.063025213778018951,
-0.019607843831181526, 0.019607843831181526), (0.067226894199848175,
-0.023529412224888802, 0.023529412224888802), (0.071428574621677399,
-0.027450980618596077, 0.027450980618596077), (0.075630255043506622,
-0.031372550874948502, 0.031372550874948502), (0.079831935465335846,
-0.031372550874948502, 0.031372550874948502), (0.08403361588716507,
-0.035294119268655777, 0.035294119268655777), (0.088235296308994293,
-0.039215687662363052, 0.039215687662363052), (0.092436976730823517,
-0.043137256056070328, 0.043137256056070328), (0.09663865715265274,
-0.043137256056070328, 0.043137256056070328), (0.10084033757448196,
-0.047058824449777603, 0.047058824449777603), (0.10504201799631119,
-0.050980392843484879, 0.050980392843484879), (0.10924369841814041,
-0.054901961237192154, 0.054901961237192154), (0.11344537883996964,
-0.058823529630899429, 0.058823529630899429), (0.11764705926179886,
-0.058823529630899429, 0.058823529630899429), (0.12184873968362808,
-0.062745101749897003, 0.062745101749897003), (0.1260504275560379,
-0.066666670143604279, 0.066666670143604279), (0.13025210797786713,
-0.070588238537311554, 0.070588238537311554), (0.13445378839969635,
-0.070588238537311554, 0.070588238537311554), (0.13865546882152557,
-0.074509806931018829, 0.074509806931018829), (0.1428571492433548,
-0.078431375324726105, 0.078431375324726105), (0.14705882966518402,
-0.08235294371843338, 0.08235294371843338), (0.15126051008701324,
-0.086274512112140656, 0.086274512112140656), (0.15546219050884247,
-0.086274512112140656, 0.086274512112140656), (0.15966387093067169,
-0.090196080505847931, 0.090196080505847931), (0.16386555135250092,
-0.094117648899555206, 0.094117648899555206), (0.16806723177433014,
-0.098039217293262482, 0.098039217293262482), (0.17226891219615936,
-0.10196078568696976, 0.10196078568696976), (0.17647059261798859,
-0.10196078568696976, 0.10196078568696976), (0.18067227303981781,
-0.10588235408067703, 0.10588235408067703), (0.18487395346164703,
-0.10980392247438431, 0.10980392247438431), (0.18907563388347626,
-0.11372549086809158, 0.11372549086809158), (0.19327731430530548,
-0.11764705926179886, 0.11764705926179886), (0.1974789947271347,
-0.12156862765550613, 0.12156862765550613), (0.20168067514896393,
-0.12156862765550613, 0.12156862765550613), (0.20588235557079315,
-0.12549020349979401, 0.12549020349979401), (0.21008403599262238,
-0.12941177189350128, 0.12941177189350128), (0.2142857164144516,
-0.13333334028720856, 0.13333334028720856), (0.21848739683628082,
-0.13725490868091583, 0.13725490868091583), (0.22268907725811005,
-0.14117647707462311, 0.14117647707462311), (0.22689075767993927,
-0.14117647707462311, 0.14117647707462311), (0.23109243810176849,
-0.14509804546833038, 0.14509804546833038), (0.23529411852359772,
-0.14901961386203766, 0.14901961386203766), (0.23949579894542694,
-0.15294118225574493, 0.15294118225574493), (0.24369747936725616,
-0.15686275064945221, 0.15686275064945221), (0.24789915978908539,
-0.16078431904315948, 0.16078431904315948), (0.25210085511207581,
-0.16078431904315948, 0.16078431904315948), (0.25630253553390503,
-0.16470588743686676, 0.16470588743686676), (0.26050421595573425,
-0.16862745583057404, 0.16862745583057404), (0.26470589637756348,
-0.17254902422428131, 0.17254902422428131), (0.2689075767993927,
-0.17647059261798859, 0.17647059261798859), (0.27310925722122192,
-0.18039216101169586, 0.18039216101169586), (0.27731093764305115,
-0.18431372940540314, 0.18431372940540314), (0.28151261806488037,
-0.18823529779911041, 0.18823529779911041), (0.28571429848670959,
-0.18823529779911041, 0.18823529779911041), (0.28991597890853882,
-0.18823529779911041, 0.18823529779911041), (0.29411765933036804,
-0.19215686619281769, 0.19215686619281769), (0.29831933975219727,
-0.19215686619281769, 0.19215686619281769), (0.30252102017402649,
-0.19607843458652496, 0.19607843458652496), (0.30672270059585571,
-0.19607843458652496, 0.19607843458652496), (0.31092438101768494,
-0.20000000298023224, 0.20000000298023224), (0.31512606143951416,
-0.20000000298023224, 0.20000000298023224), (0.31932774186134338,
-0.20392157137393951, 0.20392157137393951), (0.32352942228317261,
-0.20392157137393951, 0.20392157137393951), (0.32773110270500183,
-0.20784313976764679, 0.20784313976764679), (0.33193278312683105,
-0.20784313976764679, 0.20784313976764679), (0.33613446354866028,
-0.21176470816135406, 0.21176470816135406), (0.3403361439704895,
-0.21176470816135406, 0.21176470816135406), (0.34453782439231873,
-0.21568627655506134, 0.21568627655506134), (0.34873950481414795,
-0.21568627655506134, 0.21568627655506134), (0.35294118523597717,
-0.21960784494876862, 0.21960784494876862), (0.3571428656578064,
-0.21960784494876862, 0.21960784494876862), (0.36134454607963562,
-0.22352941334247589, 0.22352941334247589), (0.36554622650146484,
-0.22352941334247589, 0.22352941334247589), (0.36974790692329407,
-0.22745098173618317, 0.22745098173618317), (0.37394958734512329,
-0.22745098173618317, 0.22745098173618317), (0.37815126776695251,
-0.23137255012989044, 0.23137255012989044), (0.38235294818878174,
-0.23137255012989044, 0.23137255012989044), (0.38655462861061096,
-0.23529411852359772, 0.23529411852359772), (0.39075630903244019,
-0.23921568691730499, 0.23921568691730499), (0.39495798945426941,
-0.23921568691730499, 0.23921568691730499), (0.39915966987609863,
-0.24313725531101227, 0.24313725531101227), (0.40336135029792786,
-0.24313725531101227, 0.24313725531101227), (0.40756303071975708,
-0.24705882370471954, 0.24705882370471954), (0.4117647111415863,
-0.24705882370471954, 0.24705882370471954), (0.41596639156341553,
-0.25098040699958801, 0.25098040699958801), (0.42016807198524475,
-0.25098040699958801, 0.25098040699958801), (0.42436975240707397,
-0.25490197539329529, 0.25490197539329529), (0.4285714328289032,
-0.25490197539329529, 0.25490197539329529), (0.43277311325073242,
-0.25882354378700256, 0.25882354378700256), (0.43697479367256165,
-0.26274511218070984, 0.26274511218070984), (0.44117647409439087,
-0.26274511218070984, 0.26274511218070984), (0.44537815451622009,
-0.26666668057441711, 0.26666668057441711), (0.44957983493804932,
-0.26666668057441711, 0.26666668057441711), (0.45378151535987854,
-0.27058824896812439, 0.27058824896812439), (0.45798319578170776,
-0.27058824896812439, 0.27058824896812439), (0.46218487620353699,
-0.27450981736183167, 0.27450981736183167), (0.46638655662536621,
-0.27843138575553894, 0.27843138575553894), (0.47058823704719543,
-0.28627452254295349, 0.28627452254295349), (0.47478991746902466,
-0.29803922772407532, 0.29803922772407532), (0.47899159789085388,
-0.30588236451148987, 0.30588236451148987), (0.48319327831268311,
-0.31764706969261169, 0.31764706969261169), (0.48739495873451233,
-0.32549020648002625, 0.32549020648002625), (0.49159663915634155,
-0.33725491166114807, 0.33725491166114807), (0.49579831957817078,
-0.34509804844856262, 0.34509804844856262), (0.5, 0.35686275362968445,
-0.35686275362968445), (0.50420171022415161, 0.36862745881080627,
-0.36862745881080627), (0.50840336084365845, 0.37647059559822083,
-0.37647059559822083), (0.51260507106781006, 0.38823530077934265,
-0.38823530077934265), (0.51680672168731689, 0.3960784375667572,
-0.3960784375667572), (0.52100843191146851, 0.40784314274787903,
-0.40784314274787903), (0.52521008253097534, 0.41568627953529358,
-0.41568627953529358), (0.52941179275512695, 0.42745098471641541,
-0.42745098471641541), (0.53361344337463379, 0.43529412150382996,
-0.43529412150382996), (0.5378151535987854, 0.44705882668495178,
-0.44705882668495178), (0.54201680421829224, 0.45882353186607361,
-0.45882353186607361), (0.54621851444244385, 0.46666666865348816,
-0.46666666865348816), (0.55042016506195068, 0.47450980544090271,
-0.47450980544090271), (0.55462187528610229, 0.47843137383460999,
-0.47843137383460999), (0.55882352590560913, 0.48627451062202454,
-0.48627451062202454), (0.56302523612976074, 0.49411764740943909,
-0.49411764740943909), (0.56722688674926758, 0.50196081399917603,
-0.50196081399917603), (0.57142859697341919, 0.5058823823928833,
-0.5058823823928833), (0.57563024759292603, 0.51372551918029785,
-0.51372551918029785), (0.57983195781707764, 0.5215686559677124,
-0.5215686559677124), (0.58403360843658447, 0.52941179275512695,
-0.52941179275512695), (0.58823531866073608, 0.53333336114883423,
-0.53333336114883423), (0.59243696928024292, 0.54117649793624878,
-0.54117649793624878), (0.59663867950439453, 0.54901963472366333,
-0.54901963472366333), (0.60084033012390137, 0.55294120311737061,
-0.55294120311737061), (0.60504204034805298, 0.56078433990478516,
-0.56078433990478516), (0.60924369096755981, 0.56862747669219971,
-0.56862747669219971), (0.61344540119171143, 0.57647061347961426,
-0.57647061347961426), (0.61764705181121826, 0.58431375026702881,
-0.58431375026702881), (0.62184876203536987, 0.58823531866073608,
-0.58823531866073608), (0.62605041265487671, 0.59607845544815063,
-0.59607845544815063), (0.63025212287902832, 0.60392159223556519,
-0.60392159223556519), (0.63445377349853516, 0.61176472902297974,
-0.61176472902297974), (0.63865548372268677, 0.61568629741668701,
-0.61568629741668701), (0.6428571343421936, 0.62352943420410156,
-0.62352943420410156), (0.64705884456634521, 0.63137257099151611,
-0.63137257099151611), (0.65126049518585205, 0.63921570777893066,
-0.63921570777893066), (0.65546220541000366, 0.64705884456634521,
-0.64705884456634521), (0.6596638560295105, 0.65098041296005249,
-0.65098041296005249), (0.66386556625366211, 0.65882354974746704,
-0.65882354974746704), (0.66806721687316895, 0.66666668653488159,
-0.66666668653488159), (0.67226892709732056, 0.67450982332229614,
-0.67450982332229614), (0.67647057771682739, 0.68235296010971069,
-0.68235296010971069), (0.680672287940979, 0.68627452850341797,
-0.68627452850341797), (0.68487393856048584, 0.69411766529083252,
-0.69411766529083252), (0.68907564878463745, 0.70196080207824707,
-0.70196080207824707), (0.69327729940414429, 0.70980393886566162,
-0.70980393886566162), (0.6974790096282959, 0.71764707565307617,
-0.71764707565307617), (0.70168066024780273, 0.71764707565307617,
-0....
 
[truncated message content]
From: <ry...@us...> - 2009年08月31日 17:42:47
Revision: 7619
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7619&view=rev
Author: ryanmay
Date: 2009年08月31日 17:42:37 +0000 (2009年8月31日)
Log Message:
-----------
Merged revisions 7616-7618 via svnmerge from 
https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/branches/v0_99_maint
........
 r7616 | ryanmay | 2009年08月31日 12:27:12 -0500 (2009年8月31日) | 1 line
 
 Update barb_demo.py with an example using masked arrays.
........
 r7617 | ryanmay | 2009年08月31日 12:29:41 -0500 (2009年8月31日) | 1 line
 
 Pull _parse_args out of Quiver and Barbs classes, as we have multiple, diverging copies of the same code. Now the shared code will actually be shared.
........
 r7618 | ryanmay | 2009年08月31日 12:34:50 -0500 (2009年8月31日) | 1 line
 
 Use atleast_1d instead of asanyarray. This allows passing in scalars to quiver/barbs.
........
Modified Paths:
--------------
 trunk/matplotlib/examples/pylab_examples/barb_demo.py
 trunk/matplotlib/lib/matplotlib/quiver.py
Property Changed:
----------------
 trunk/matplotlib/
 trunk/matplotlib/doc/pyplots/README
 trunk/matplotlib/doc/sphinxext/gen_gallery.py
 trunk/matplotlib/doc/sphinxext/gen_rst.py
 trunk/matplotlib/examples/misc/multiprocess.py
 trunk/matplotlib/examples/mplot3d/contour3d_demo.py
 trunk/matplotlib/examples/mplot3d/contourf3d_demo.py
 trunk/matplotlib/examples/mplot3d/polys3d_demo.py
 trunk/matplotlib/examples/mplot3d/scatter3d_demo.py
 trunk/matplotlib/examples/mplot3d/surface3d_demo.py
 trunk/matplotlib/examples/mplot3d/wire3d_demo.py
 trunk/matplotlib/lib/matplotlib/sphinxext/mathmpl.py
 trunk/matplotlib/lib/matplotlib/sphinxext/only_directives.py
 trunk/matplotlib/lib/matplotlib/sphinxext/plot_directive.py
Property changes on: trunk/matplotlib
___________________________________________________________________
Modified: svnmerge-integrated
 - /branches/mathtex:1-7263 /branches/v0_98_5_maint:1-7253 /branches/v0_99_maint:1-7607
 + /branches/mathtex:1-7263 /branches/v0_98_5_maint:1-7253 /branches/v0_99_maint:1-7618
Modified: svn:mergeinfo
 - /branches/v0_91_maint:5753-5771
/branches/v0_98_5_maint:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint:5753-5771
/branches/v0_98_5_maint:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Property changes on: trunk/matplotlib/doc/pyplots/README
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_98_5_maint/doc/pyplots/README:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint/doc/pyplots/README:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_98_5_maint/doc/pyplots/README:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint/doc/pyplots/README:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Property changes on: trunk/matplotlib/doc/sphinxext/gen_gallery.py
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_91_maint/doc/_templates/gen_gallery.py:5753-5771
/branches/v0_98_5_maint/doc/sphinxext/gen_gallery.py:6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint/doc/sphinxext/gen_gallery.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint/doc/_templates/gen_gallery.py:5753-5771
/branches/v0_98_5_maint/doc/sphinxext/gen_gallery.py:6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint/doc/sphinxext/gen_gallery.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Property changes on: trunk/matplotlib/doc/sphinxext/gen_rst.py
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_91_maint/doc/examples/gen_rst.py:5753-5771
/branches/v0_98_5_maint/doc/sphinxext/gen_rst.py:6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint/doc/sphinxext/gen_rst.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint/doc/examples/gen_rst.py:5753-5771
/branches/v0_98_5_maint/doc/sphinxext/gen_rst.py:6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint/doc/sphinxext/gen_rst.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Property changes on: trunk/matplotlib/examples/misc/multiprocess.py
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_91_maint/examples/misc/log.py:5753-5771
/branches/v0_98_5_maint/examples/misc/log.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/misc/multiprocess.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint/examples/misc/log.py:5753-5771
/branches/v0_98_5_maint/examples/misc/log.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/misc/multiprocess.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Property changes on: trunk/matplotlib/examples/mplot3d/contour3d_demo.py
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_91_maint/examples/mplot3d/contour.py:5753-5771
/branches/v0_98_5_maint/examples/mplot3d/contour.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/mplot3d/contour3d_demo.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint/examples/mplot3d/contour.py:5753-5771
/branches/v0_98_5_maint/examples/mplot3d/contour.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/mplot3d/contour3d_demo.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Property changes on: trunk/matplotlib/examples/mplot3d/contourf3d_demo.py
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_91_maint/examples/mplot3d/contourf.py:5753-5771
/branches/v0_98_5_maint/examples/mplot3d/contourf.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/mplot3d/contourf3d_demo.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint/examples/mplot3d/contourf.py:5753-5771
/branches/v0_98_5_maint/examples/mplot3d/contourf.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/mplot3d/contourf3d_demo.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Property changes on: trunk/matplotlib/examples/mplot3d/polys3d_demo.py
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_91_maint/examples/mplot3d/polys.py:5753-5771
/branches/v0_98_5_maint/examples/mplot3d/polys.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/mplot3d/polys3d_demo.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint/examples/mplot3d/polys.py:5753-5771
/branches/v0_98_5_maint/examples/mplot3d/polys.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/mplot3d/polys3d_demo.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Property changes on: trunk/matplotlib/examples/mplot3d/scatter3d_demo.py
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_91_maint/examples/mplot3d/scatter.py:5753-5771
/branches/v0_98_5_maint/examples/mplot3d/scatter.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/mplot3d/scatter3d_demo.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint/examples/mplot3d/scatter.py:5753-5771
/branches/v0_98_5_maint/examples/mplot3d/scatter.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/mplot3d/scatter3d_demo.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Property changes on: trunk/matplotlib/examples/mplot3d/surface3d_demo.py
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_91_maint/examples/mplot3d/surface.py:5753-5771
/branches/v0_98_5_maint/examples/mplot3d/surface.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/mplot3d/surface3d_demo.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint/examples/mplot3d/surface.py:5753-5771
/branches/v0_98_5_maint/examples/mplot3d/surface.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/mplot3d/surface3d_demo.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Property changes on: trunk/matplotlib/examples/mplot3d/wire3d_demo.py
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_91_maint/examples/mplot3d/wire.py:5753-5771
/branches/v0_98_5_maint/examples/mplot3d/wire.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/mplot3d/wire3d_demo.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint/examples/mplot3d/wire.py:5753-5771
/branches/v0_98_5_maint/examples/mplot3d/wire.py:6581,6585,6587,6589-6609,6614,6616,6625,6652,6660-6662,6672-6673,6714-6715,6717-6732,6752-6754,6761-6773,6781,6792,6800,6802,6805,6809,6811,6822,6827,6850,6854,6856,6859,6861-6873,6883-6884,6886,6890-6891,6906-6909,6911-6912,6915-6916,6918,6920-6925,6927-6928,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080
/branches/v0_99_maint/examples/mplot3d/wire3d_demo.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Modified: trunk/matplotlib/examples/pylab_examples/barb_demo.py
===================================================================
--- trunk/matplotlib/examples/pylab_examples/barb_demo.py	2009年08月31日 17:34:50 UTC (rev 7618)
+++ trunk/matplotlib/examples/pylab_examples/barb_demo.py	2009年08月31日 17:42:37 UTC (rev 7619)
@@ -28,7 +28,7 @@
 ax.barbs(data['x'], data['y'], data['u'], data['v'], length=8, pivot='middle')
 
 #Showing colormapping with uniform grid. Fill the circle for an empty barb,
-#don't round the values, and change some of the size parameters 
+#don't round the values, and change some of the size parameters
 ax = plt.subplot(2,2,3)
 ax.barbs(X, Y, U, V, np.sqrt(U*U + V*V), fill_empty=True, rounding=False,
 sizes=dict(emptybarb=0.25, spacing=0.2, height=0.3))
@@ -39,4 +39,15 @@
 barbcolor=['b','g'], barb_increments=dict(half=10, full=20, flag=100),
 flip_barb=True)
 
+#Masked arrays are also supported
+masked_u = np.ma.masked_array(data['u'])
+masked_u[4] = 1000 #Bad value that should not be plotted when masked
+masked_u[4] = np.ma.masked
+
+#Identical plot to panel 2 in the first figure, but with the point at
+#(0.5, 0.25) missing (masked)
+fig2 = plt.figure()
+ax = fig2.add_subplot(1, 1, 1)
+ax.barbs(data['x'], data['y'], masked_u, data['v'], length=8, pivot='middle')
+
 plt.show()
Modified: trunk/matplotlib/lib/matplotlib/quiver.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/quiver.py	2009年08月31日 17:34:50 UTC (rev 7618)
+++ trunk/matplotlib/lib/matplotlib/quiver.py	2009年08月31日 17:42:37 UTC (rev 7619)
@@ -325,6 +325,33 @@
 quiverkey_doc = _quiverkey_doc
 
 
+# This is a helper function that parses out the various combination of
+# arguments for doing colored vector plots. Pulling it out here
+# allows both Quiver and Barbs to use it
+def _parse_args(*args):
+ X, Y, U, V, C = [None]*5
+ args = list(args)
+
+ # The use of atleast_1d allows for handling scalar arguments while also
+ # keeping masked arrays
+ if len(args) == 3 or len(args) == 5:
+ C = np.atleast_1d(args.pop(-1))
+ V = np.atleast_1d(args.pop(-1))
+ U = np.atleast_1d(args.pop(-1))
+ if U.ndim == 1:
+ nr, nc = 1, U.shape[0]
+ else:
+ nr, nc = U.shape
+ if len(args) == 2: # remaining after removing U,V,C
+ X, Y = [np.array(a).ravel() for a in args]
+ if len(X) == nc and len(Y) == nr:
+ X, Y = [a.ravel() for a in np.meshgrid(X, Y)]
+ else:
+ indexgrid = np.meshgrid(np.arange(nc), np.arange(nr))
+ X, Y = [np.ravel(a) for a in indexgrid]
+ return X, Y, U, V, C
+
+
 class Quiver(collections.PolyCollection):
 """
 Specialized PolyCollection for arrows.
@@ -351,7 +378,7 @@
 by the following pylab interface documentation:
 %s"""
 self.ax = ax
- X, Y, U, V, C = self._parse_args(*args)
+ X, Y, U, V, C = _parse_args(*args)
 self.X = X
 self.Y = Y
 self.XY = np.hstack((X[:,np.newaxis], Y[:,np.newaxis]))
@@ -390,26 +417,6 @@
 self.ax.figure.callbacks.connect('dpi_changed', on_dpi_change)
 
 
- def _parse_args(self, *args):
- X, Y, U, V, C = [None]*5
- args = list(args)
- if len(args) == 3 or len(args) == 5:
- C = np.asanyarray(args.pop(-1))
- V = np.asanyarray(args.pop(-1))
- U = np.asanyarray(args.pop(-1))
- if U.ndim == 1:
- nr, nc = 1, U.shape[0]
- else:
- nr, nc = U.shape
- if len(args) == 2: # remaining after removing U,V,C
- X, Y = [np.array(a).ravel() for a in args]
- if len(X) == nc and len(Y) == nr:
- X, Y = [a.ravel() for a in np.meshgrid(X, Y)]
- else:
- indexgrid = np.meshgrid(np.arange(nc), np.arange(nr))
- X, Y = [np.ravel(a) for a in indexgrid]
- return X, Y, U, V, C
-
 def _init(self):
 """initialization delayed until first draw;
 allow time for axes setup.
@@ -762,7 +769,7 @@
 kw['facecolors'] = flagcolor
 
 #Parse out the data arrays from the various configurations supported
- x, y, u, v, c = self._parse_args(*args)
+ x, y, u, v, c = _parse_args(*args)
 self.x = x
 self.y = y
 xy = np.hstack((x[:,np.newaxis], y[:,np.newaxis]))
@@ -942,28 +949,6 @@
 
 return barb_list
 
- #Taken shamelessly from Quiver
- def _parse_args(self, *args):
- X, Y, U, V, C = [None]*5
- args = list(args)
- if len(args) == 3 or len(args) == 5:
- C = ma.masked_invalid(args.pop(-1), copy=False).ravel()
- V = ma.masked_invalid(args.pop(-1), copy=False)
- U = ma.masked_invalid(args.pop(-1), copy=False)
- nn = np.shape(U)
- nc = nn[0]
- nr = 1
- if len(nn) > 1:
- nr = nn[1]
- if len(args) == 2: # remaining after removing U,V,C
- X, Y = [np.array(a).ravel() for a in args]
- if len(X) == nc and len(Y) == nr:
- X, Y = [a.ravel() for a in np.meshgrid(X, Y)]
- else:
- indexgrid = np.meshgrid(np.arange(nc), np.arange(nr))
- X, Y = [np.ravel(a) for a in indexgrid]
- return X, Y, U, V, C
-
 def set_UVC(self, U, V, C=None):
 self.u = ma.masked_invalid(U, copy=False).ravel()
 self.v = ma.masked_invalid(V, copy=False).ravel()
Property changes on: trunk/matplotlib/lib/matplotlib/sphinxext/mathmpl.py
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_91_maint/doc/sphinxext/mathmpl.py:5753-5771
/branches/v0_98_5_maint/lib/matplotlib/sphinxext/mathmpl.py:6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint/lib/matplotlib/sphinxext/mathmpl.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint/doc/sphinxext/mathmpl.py:5753-5771
/branches/v0_98_5_maint/lib/matplotlib/sphinxext/mathmpl.py:6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint/lib/matplotlib/sphinxext/mathmpl.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Property changes on: trunk/matplotlib/lib/matplotlib/sphinxext/only_directives.py
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_91_maint/doc/sphinxext/only_directives.py:5753-5771
/branches/v0_98_5_maint/lib/matplotlib/sphinxext/only_directives.py:6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint/lib/matplotlib/sphinxext/only_directives.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint/doc/sphinxext/only_directives.py:5753-5771
/branches/v0_98_5_maint/lib/matplotlib/sphinxext/only_directives.py:6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint/lib/matplotlib/sphinxext/only_directives.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
Property changes on: trunk/matplotlib/lib/matplotlib/sphinxext/plot_directive.py
___________________________________________________________________
Modified: svn:mergeinfo
 - /branches/v0_91_maint/doc/sphinxext/plot_directive.py:5753-5771
/branches/v0_98_5_maint/lib/matplotlib/sphinxext/plot_directive.py:6920-6925,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint/lib/matplotlib/sphinxext/plot_directive.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584
 + /branches/v0_91_maint/doc/sphinxext/plot_directive.py:5753-5771
/branches/v0_98_5_maint/lib/matplotlib/sphinxext/plot_directive.py:6920-6925,6934,6941,6946,6948,6950,6952,6960,6972,6984-6985,6990,6995,6997-7001,7014,7016,7018,7024-7025,7033,7035,7042,7072,7080,7176,7209-7211,7227,7245
/branches/v0_99_maint/lib/matplotlib/sphinxext/plot_directive.py:7338,7393,7395-7404,7407-7424,7428-7433,7442-7444,7446,7475-7482,7484,7486,7489-7523,7567,7569,7582-7584,7616-7618
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <ry...@us...> - 2009年08月31日 17:34:58
Revision: 7618
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7618&view=rev
Author: ryanmay
Date: 2009年08月31日 17:34:50 +0000 (2009年8月31日)
Log Message:
-----------
Use atleast_1d instead of asanyarray. This allows passing in scalars to quiver/barbs.
Modified Paths:
--------------
 branches/v0_99_maint/lib/matplotlib/quiver.py
Modified: branches/v0_99_maint/lib/matplotlib/quiver.py
===================================================================
--- branches/v0_99_maint/lib/matplotlib/quiver.py	2009年08月31日 17:29:41 UTC (rev 7617)
+++ branches/v0_99_maint/lib/matplotlib/quiver.py	2009年08月31日 17:34:50 UTC (rev 7618)
@@ -323,16 +323,20 @@
 
 quiverkey_doc = _quiverkey_doc
 
+
 # This is a helper function that parses out the various combination of
 # arguments for doing colored vector plots. Pulling it out here
 # allows both Quiver and Barbs to use it
 def _parse_args(*args):
 X, Y, U, V, C = [None]*5
 args = list(args)
+
+ # The use of atleast_1d allows for handling scalar arguments while also
+ # keeping masked arrays
 if len(args) == 3 or len(args) == 5:
- C = np.asanyarray(args.pop(-1))
- V = np.asanyarray(args.pop(-1))
- U = np.asanyarray(args.pop(-1))
+ C = np.atleast_1d(args.pop(-1))
+ V = np.atleast_1d(args.pop(-1))
+ U = np.atleast_1d(args.pop(-1))
 if U.ndim == 1:
 nr, nc = 1, U.shape[0]
 else:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <ry...@us...> - 2009年08月31日 17:29:49
Revision: 7617
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7617&view=rev
Author: ryanmay
Date: 2009年08月31日 17:29:41 +0000 (2009年8月31日)
Log Message:
-----------
Pull _parse_args out of Quiver and Barbs classes, as we have multiple, diverging copies of the same code. Now the shared code will actually be shared.
Modified Paths:
--------------
 branches/v0_99_maint/lib/matplotlib/quiver.py
Modified: branches/v0_99_maint/lib/matplotlib/quiver.py
===================================================================
--- branches/v0_99_maint/lib/matplotlib/quiver.py	2009年08月31日 17:27:12 UTC (rev 7616)
+++ branches/v0_99_maint/lib/matplotlib/quiver.py	2009年08月31日 17:29:41 UTC (rev 7617)
@@ -323,7 +323,30 @@
 
 quiverkey_doc = _quiverkey_doc
 
+# This is a helper function that parses out the various combination of
+# arguments for doing colored vector plots. Pulling it out here
+# allows both Quiver and Barbs to use it
+def _parse_args(*args):
+ X, Y, U, V, C = [None]*5
+ args = list(args)
+ if len(args) == 3 or len(args) == 5:
+ C = np.asanyarray(args.pop(-1))
+ V = np.asanyarray(args.pop(-1))
+ U = np.asanyarray(args.pop(-1))
+ if U.ndim == 1:
+ nr, nc = 1, U.shape[0]
+ else:
+ nr, nc = U.shape
+ if len(args) == 2: # remaining after removing U,V,C
+ X, Y = [np.array(a).ravel() for a in args]
+ if len(X) == nc and len(Y) == nr:
+ X, Y = [a.ravel() for a in np.meshgrid(X, Y)]
+ else:
+ indexgrid = np.meshgrid(np.arange(nc), np.arange(nr))
+ X, Y = [np.ravel(a) for a in indexgrid]
+ return X, Y, U, V, C
 
+
 class Quiver(collections.PolyCollection):
 """
 Specialized PolyCollection for arrows.
@@ -343,7 +366,7 @@
 """
 def __init__(self, ax, *args, **kw):
 self.ax = ax
- X, Y, U, V, C = self._parse_args(*args)
+ X, Y, U, V, C = _parse_args(*args)
 self.X = X
 self.Y = Y
 self.XY = np.hstack((X[:,np.newaxis], Y[:,np.newaxis]))
@@ -388,26 +411,6 @@
 by the following pylab interface documentation:
 %s""" % _quiver_doc
 
- def _parse_args(self, *args):
- X, Y, U, V, C = [None]*5
- args = list(args)
- if len(args) == 3 or len(args) == 5:
- C = np.asanyarray(args.pop(-1))
- V = np.asanyarray(args.pop(-1))
- U = np.asanyarray(args.pop(-1))
- if U.ndim == 1:
- nr, nc = 1, U.shape[0]
- else:
- nr, nc = U.shape
- if len(args) == 2: # remaining after removing U,V,C
- X, Y = [np.array(a).ravel() for a in args]
- if len(X) == nc and len(Y) == nr:
- X, Y = [a.ravel() for a in np.meshgrid(X, Y)]
- else:
- indexgrid = np.meshgrid(np.arange(nc), np.arange(nr))
- X, Y = [np.ravel(a) for a in indexgrid]
- return X, Y, U, V, C
-
 def _init(self):
 """initialization delayed until first draw;
 allow time for axes setup.
@@ -752,7 +755,7 @@
 kw['facecolors'] = flagcolor
 
 #Parse out the data arrays from the various configurations supported
- x, y, u, v, c = self._parse_args(*args)
+ x, y, u, v, c = _parse_args(*args)
 self.x = x
 self.y = y
 xy = np.hstack((x[:,np.newaxis], y[:,np.newaxis]))
@@ -938,28 +941,6 @@
 
 return barb_list
 
- #Taken shamelessly from Quiver
- def _parse_args(self, *args):
- X, Y, U, V, C = [None]*5
- args = list(args)
- if len(args) == 3 or len(args) == 5:
- C = ma.masked_invalid(args.pop(-1), copy=False).ravel()
- V = ma.masked_invalid(args.pop(-1), copy=False)
- U = ma.masked_invalid(args.pop(-1), copy=False)
- nn = np.shape(U)
- nc = nn[0]
- nr = 1
- if len(nn) > 1:
- nr = nn[1]
- if len(args) == 2: # remaining after removing U,V,C
- X, Y = [np.array(a).ravel() for a in args]
- if len(X) == nc and len(Y) == nr:
- X, Y = [a.ravel() for a in np.meshgrid(X, Y)]
- else:
- indexgrid = np.meshgrid(np.arange(nc), np.arange(nr))
- X, Y = [np.ravel(a) for a in indexgrid]
- return X, Y, U, V, C
-
 def set_UVC(self, U, V, C=None):
 self.u = ma.masked_invalid(U, copy=False).ravel()
 self.v = ma.masked_invalid(V, copy=False).ravel()
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 7616
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7616&view=rev
Author: ryanmay
Date: 2009年08月31日 17:27:12 +0000 (2009年8月31日)
Log Message:
-----------
Update barb_demo.py with an example using masked arrays.
Modified Paths:
--------------
 branches/v0_99_maint/examples/pylab_examples/barb_demo.py
Modified: branches/v0_99_maint/examples/pylab_examples/barb_demo.py
===================================================================
--- branches/v0_99_maint/examples/pylab_examples/barb_demo.py	2009年08月31日 16:48:46 UTC (rev 7615)
+++ branches/v0_99_maint/examples/pylab_examples/barb_demo.py	2009年08月31日 17:27:12 UTC (rev 7616)
@@ -28,7 +28,7 @@
 ax.barbs(data['x'], data['y'], data['u'], data['v'], length=8, pivot='middle')
 
 #Showing colormapping with uniform grid. Fill the circle for an empty barb,
-#don't round the values, and change some of the size parameters 
+#don't round the values, and change some of the size parameters
 ax = plt.subplot(2,2,3)
 ax.barbs(X, Y, U, V, np.sqrt(U*U + V*V), fill_empty=True, rounding=False,
 sizes=dict(emptybarb=0.25, spacing=0.2, height=0.3))
@@ -39,4 +39,15 @@
 barbcolor=['b','g'], barb_increments=dict(half=10, full=20, flag=100),
 flip_barb=True)
 
+#Masked arrays are also supported
+masked_u = np.ma.masked_array(data['u'])
+masked_u[4] = 1000 #Bad value that should not be plotted when masked
+masked_u[4] = np.ma.masked
+
+#Identical plot to panel 2 in the first figure, but with the point at
+#(0.5, 0.25) missing (masked)
+fig2 = plt.figure()
+ax = fig2.add_subplot(1, 1, 1)
+ax.barbs(data['x'], data['y'], masked_u, data['v'], length=8, pivot='middle')
+
 plt.show()
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <as...@us...> - 2009年08月31日 16:48:57
Revision: 7615
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7615&view=rev
Author: astraw
Date: 2009年08月31日 16:48:46 +0000 (2009年8月31日)
Log Message:
-----------
buildbot: allow passing arguments to select virtualenv and nose
This is useful for getting the buildbot to run Python2.4.
Modified Paths:
--------------
 trunk/matplotlib/test/_buildbot_install.py
Modified: trunk/matplotlib/test/_buildbot_install.py
===================================================================
--- trunk/matplotlib/test/_buildbot_install.py	2009年08月31日 15:31:46 UTC (rev 7614)
+++ trunk/matplotlib/test/_buildbot_install.py	2009年08月31日 16:48:46 UTC (rev 7615)
@@ -2,9 +2,21 @@
 faciltate testing."""
 import shutil, os, sys
 from subprocess import Popen, PIPE, STDOUT
+from optparse import OptionParser
 
 from _buildbot_util import check_call
 
+usage = """%prog [options]"""
+parser = OptionParser(usage)
+parser.add_option('--virtualenv',type='string',default='virtualenv',
+ help='string to invoke virtualenv')
+parser.add_option('--easy-install-nose',action='store_true',default=False,
+ help='run "easy_install nose" in the virtualenv')
+(options, args) = parser.parse_args()
+if len(args)!=0:
+ parser.print_help()
+ sys.exit(0)
+
 TARGET='PYmpl'
 
 if os.path.exists(TARGET):
@@ -15,6 +27,10 @@
 if os.path.exists(build_path):
 shutil.rmtree(build_path)
 
-check_call('virtualenv %s'%(TARGET,))
+check_call('%s %s'%(options.virtualenv,TARGET))
 TARGET_py = os.path.join(TARGET,'bin','python')
+TARGET_easy_install = os.path.join(TARGET,'bin','easy_install')
+
+if options.easy_install_nose:
+ check_call('%s nose'%TARGET_easy_install)
 check_call('%s setup.py install'%TARGET_py)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <md...@us...> - 2009年08月31日 15:31:54
Revision: 7614
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7614&view=rev
Author: mdboom
Date: 2009年08月31日 15:31:46 +0000 (2009年8月31日)
Log Message:
-----------
[2832896] raster scale error in PDF, EPS output
Modified Paths:
--------------
 trunk/matplotlib/lib/matplotlib/backends/backend_agg.py
 trunk/matplotlib/lib/matplotlib/image.py
 trunk/matplotlib/src/_backend_agg.cpp
Modified: trunk/matplotlib/lib/matplotlib/backends/backend_agg.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/backends/backend_agg.py	2009年08月31日 05:23:37 UTC (rev 7613)
+++ trunk/matplotlib/lib/matplotlib/backends/backend_agg.py	2009年08月31日 15:31:46 UTC (rev 7614)
@@ -140,7 +140,7 @@
 # space) in the following call to draw_text_image).
 font.set_text(s, 0, flags=LOAD_FORCE_AUTOHINT)
 font.draw_glyphs_to_bitmap()
- 
+
 #print x, y, int(x), int(y), s
 
 self._renderer.draw_text_image(font.get_image(), int(x), int(y) + 1, angle, gc)
Modified: trunk/matplotlib/lib/matplotlib/image.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/image.py	2009年08月31日 05:23:37 UTC (rev 7613)
+++ trunk/matplotlib/lib/matplotlib/image.py	2009年08月31日 15:31:46 UTC (rev 7614)
@@ -141,7 +141,7 @@
 gc = renderer.new_gc()
 gc.set_clip_rectangle(self.axes.bbox.frozen())
 gc.set_clip_path(self.get_clip_path())
- renderer.draw_image(gc, round(l), round(b), im)
+ renderer.draw_image(gc, l, b, im)
 
 def contains(self, mouseevent):
 """
@@ -421,10 +421,8 @@
 ty = (ymin-self.axes.viewLim.y0)/dyintv * numrows
 
 l, b, r, t = self.axes.bbox.extents
- widthDisplay = (round(r) + 0.5) - (round(l) - 0.5)
- heightDisplay = (round(t) + 0.5) - (round(b) - 0.5)
- widthDisplay *= magnification
- heightDisplay *= magnification
+ widthDisplay = (round(r*magnification) + 0.5) - (round(l*magnification) - 0.5)
+ heightDisplay = (round(t*magnification) + 0.5) - (round(b*magnification) - 0.5)
 im.apply_translation(tx, ty)
 
 # resize viewport to display
Modified: trunk/matplotlib/src/_backend_agg.cpp
===================================================================
--- trunk/matplotlib/src/_backend_agg.cpp	2009年08月31日 05:23:37 UTC (rev 7613)
+++ trunk/matplotlib/src/_backend_agg.cpp	2009年08月31日 15:31:46 UTC (rev 7614)
@@ -803,8 +803,8 @@
 args.verify_length(4);
 
 GCAgg gc(args[0], dpi);
- double x = Py::Float(args[1]);
- double y = Py::Float(args[2]);
+ double x = mpl_round(Py::Float(args[1]));
+ double y = mpl_round(Py::Float(args[2]));
 Image *image = static_cast<Image*>(args[3].ptr());
 bool has_clippath = false;
 
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 7613
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7613&view=rev
Author: astraw
Date: 2009年08月31日 05:23:37 +0000 (2009年8月31日)
Log Message:
-----------
buildbot: removed forced error
Modified Paths:
--------------
 trunk/matplotlib/test/test_matplotlib/TestAxes.py
Modified: trunk/matplotlib/test/test_matplotlib/TestAxes.py
===================================================================
--- trunk/matplotlib/test/test_matplotlib/TestAxes.py	2009年08月31日 04:46:55 UTC (rev 7612)
+++ trunk/matplotlib/test/test_matplotlib/TestAxes.py	2009年08月31日 05:23:37 UTC (rev 7613)
@@ -45,8 +45,6 @@
 #--------------------------------------------------------------------
 def test_empty_datetime( self ):
 """Test plotting empty axes with dates along one axis."""
- if 1:
- raise RuntimeError('error forced to test buildbot error reporting')
 fname = self.outFile( "empty_datetime.png" )
 
 t0 = datetime(2009, 1, 20)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 7612
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7612&view=rev
Author: astraw
Date: 2009年08月31日 04:46:55 +0000 (2009年8月31日)
Log Message:
-----------
buildbot: force error to test reporting abilities
Modified Paths:
--------------
 trunk/matplotlib/test/test_matplotlib/TestAxes.py
Modified: trunk/matplotlib/test/test_matplotlib/TestAxes.py
===================================================================
--- trunk/matplotlib/test/test_matplotlib/TestAxes.py	2009年08月31日 02:48:42 UTC (rev 7611)
+++ trunk/matplotlib/test/test_matplotlib/TestAxes.py	2009年08月31日 04:46:55 UTC (rev 7612)
@@ -45,6 +45,8 @@
 #--------------------------------------------------------------------
 def test_empty_datetime( self ):
 """Test plotting empty axes with dates along one axis."""
+ if 1:
+ raise RuntimeError('error forced to test buildbot error reporting')
 fname = self.outFile( "empty_datetime.png" )
 
 t0 = datetime(2009, 1, 20)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <jd...@us...> - 2009年08月31日 02:48:50
Revision: 7611
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7611&view=rev
Author: jdh2358
Date: 2009年08月31日 02:48:42 +0000 (2009年8月31日)
Log Message:
-----------
update known good baselines using freetype 2.3.5
Modified Paths:
--------------
 trunk/matplotlib/test/test_matplotlib/baseline/TestAxes/empty_datetime.png
 trunk/matplotlib/test/test_matplotlib/baseline/TestTickers/RRuleLocator_bounds.png
 trunk/matplotlib/test/test_plots/baseline/TestAnnotation/offset_points.png
 trunk/matplotlib/test/test_plots/baseline/TestFill/fill_units.png
 trunk/matplotlib/test/test_plots/baseline/TestPlot/const_xy.png
 trunk/matplotlib/test/test_plots/baseline/TestPlot/shaped_data.png
 trunk/matplotlib/test/test_plots/baseline/TestPlot/single_date.png
Modified: trunk/matplotlib/test/test_matplotlib/baseline/TestAxes/empty_datetime.png
===================================================================
(Binary files differ)
Modified: trunk/matplotlib/test/test_matplotlib/baseline/TestTickers/RRuleLocator_bounds.png
===================================================================
(Binary files differ)
Modified: trunk/matplotlib/test/test_plots/baseline/TestAnnotation/offset_points.png
===================================================================
(Binary files differ)
Modified: trunk/matplotlib/test/test_plots/baseline/TestFill/fill_units.png
===================================================================
(Binary files differ)
Modified: trunk/matplotlib/test/test_plots/baseline/TestPlot/const_xy.png
===================================================================
(Binary files differ)
Modified: trunk/matplotlib/test/test_plots/baseline/TestPlot/shaped_data.png
===================================================================
(Binary files differ)
Modified: trunk/matplotlib/test/test_plots/baseline/TestPlot/single_date.png
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <jd...@us...> - 2009年08月31日 02:42:55
Revision: 7610
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7610&view=rev
Author: jdh2358
Date: 2009年08月31日 02:42:44 +0000 (2009年8月31日)
Log Message:
-----------
make the buildbot point to devbb
Modified Paths:
--------------
 trunk/matplotlib/test/_buildbot_mac_sage.sh
Modified: trunk/matplotlib/test/_buildbot_mac_sage.sh
===================================================================
--- trunk/matplotlib/test/_buildbot_mac_sage.sh	2009年08月31日 02:33:21 UTC (rev 7609)
+++ trunk/matplotlib/test/_buildbot_mac_sage.sh	2009年08月31日 02:42:44 UTC (rev 7610)
@@ -3,6 +3,7 @@
 rm -rf ${HOME}/.matplotlib/*
 rm -rf build
 
+export PATH=${HOME}/dev/bin:$PATH
 export PYTHON=${HOME}/dev/bin/python
 export PREFIX=${HOME}/devbb 
 export PYTHONPATH=${PREFIX}/lib/python2.6/site-packages:${HOME}/dev/lib/python2.6/site-packages
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <jd...@us...> - 2009年08月31日 02:33:28
Revision: 7609
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7609&view=rev
Author: jdh2358
Date: 2009年08月31日 02:33:21 +0000 (2009年8月31日)
Log Message:
-----------
update make.osx to find the local freetype etc
Modified Paths:
--------------
 trunk/matplotlib/lib/matplotlib/backends/backend_agg.py
 trunk/matplotlib/make.osx
Modified: trunk/matplotlib/lib/matplotlib/backends/backend_agg.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/backends/backend_agg.py	2009年08月31日 00:38:43 UTC (rev 7608)
+++ trunk/matplotlib/lib/matplotlib/backends/backend_agg.py	2009年08月31日 02:33:21 UTC (rev 7609)
@@ -140,9 +140,9 @@
 # space) in the following call to draw_text_image).
 font.set_text(s, 0, flags=LOAD_FORCE_AUTOHINT)
 font.draw_glyphs_to_bitmap()
+ 
+ #print x, y, int(x), int(y), s
 
- #print x, y, int(x), int(y)
-
 self._renderer.draw_text_image(font.get_image(), int(x), int(y) + 1, angle, gc)
 
 def get_text_width_height_descent(self, s, prop, ismath):
Modified: trunk/matplotlib/make.osx
===================================================================
--- trunk/matplotlib/make.osx	2009年08月31日 00:38:43 UTC (rev 7608)
+++ trunk/matplotlib/make.osx	2009年08月31日 02:33:21 UTC (rev 7609)
@@ -10,10 +10,7 @@
 
 ## You shouldn't need to configure past this point
 
-CFLAGS="-Os -arch ppc -arch i386 -I{$PREFIX}/include"
-
-LDFLAGS="-arch ppc -arch i386 -L${PREFIX}/lib"
-
+PKG_CONFIG_PATH="${PREFIX}/lib/pkgconfig"
 CFLAGS_DEPS="-arch i386 -arch ppc -I${PREFIX}/include -I${PREFIX}/include/freetype2 -isysroot /Developer/SDKs/MacOSX10.4u.sdk"
 LDFLAGS_DEPS="-arch i386 -arch ppc -L${PREFIX}/lib -syslibroot,/Developer/SDKs/MacOSX10.4u.sdk"
 
@@ -32,7 +29,7 @@
 
 
 zlib:
-	unset PKG_CONFIG_PATH &&\
+	export PKG_CONFIG_PATH=${PKG_CONFIG_PATH} &&\
 	rm -rf zlib-${ZLIBVERSION} &&\
 	tar xvfz zlib-${ZLIBVERSION}.tar.gz &&\
 	cd zlib-${ZLIBVERSION} &&\
@@ -44,7 +41,7 @@
 	unset MACOSX_DEPLOYMENT_TARGET
 
 png: zlib
-	unset PKG_CONFIG_PATH &&\
+	export PKG_CONFIG_PATH=${PKG_CONFIG_PATH} &&\
 	rm -rf libpng-${PNGVERSION} &&\
 	tar xvfj libpng-${PNGVERSION}.tar.bz2
 	cd libpng-${PNGVERSION} &&\
@@ -58,7 +55,7 @@
 
 
 freetype: zlib
-	unset PKG_CONFIG_PATH &&\
+	export PKG_CONFIG_PATH=${PKG_CONFIG_PATH} &&\
 	rm -rf ${FREETYPEVERSION} &&\
 	tar xvfj freetype-${FREETYPEVERSION}.tar.bz2 &&\
 	cd freetype-${FREETYPEVERSION} &&\
@@ -75,13 +72,17 @@
 	echo 'all done'
 
 mpl_build:
+	export PKG_CONFIG_PATH=${PKG_CONFIG_PATH} &&\
 	export MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} &&\
 	export CFLAGS=${CFLAGS_DEPS} &&\
 	export LDFLAGS=${LDFLAGS_DEPS} &&\
 	python setup.py build
 
 mpl_install:
+	export PKG_CONFIG_PATH=${PKG_CONFIG_PATH} &&\
 	export MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET} &&\
 	export CFLAGS=${CFLAGS_DEPS} &&\
 	export LDFLAGS=${LDFLAGS_DEPS} &&\
+	export LD_LIBRARY_PATH=${PREFIX}/lib &&\
+	export DYLD_LIBRARY_PATH=${PREFIX}/lib &&\
 	python setup.py install --prefix=${PREFIX}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <lee...@us...> - 2009年08月31日 00:38:49
Revision: 7608
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7608&view=rev
Author: leejjoon
Date: 2009年08月31日 00:38:43 +0000 (2009年8月31日)
Log Message:
-----------
Merged revisions 7607 via svnmerge from 
https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/branches/v0_99_maint
........
 r7607 | leejjoon | 2009年08月30日 20:32:12 -0400 (2009年8月30日) | 1 line
 
 fix sf bug #2839919
........
Modified Paths:
--------------
 trunk/matplotlib/lib/matplotlib/legend.py
Property Changed:
----------------
 trunk/matplotlib/
Property changes on: trunk/matplotlib
___________________________________________________________________
Modified: svnmerge-integrated
 - /branches/mathtex:1-7263 /branches/v0_98_5_maint:1-7253 /branches/v0_99_maint:1-7600
 + /branches/mathtex:1-7263 /branches/v0_98_5_maint:1-7253 /branches/v0_99_maint:1-7607
Modified: trunk/matplotlib/lib/matplotlib/legend.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/legend.py	2009年08月31日 00:32:12 UTC (rev 7607)
+++ trunk/matplotlib/lib/matplotlib/legend.py	2009年08月31日 00:38:43 UTC (rev 7608)
@@ -591,8 +591,9 @@
 # We calculate number of lows in each column. The first
 # (num_largecol) columns will have (nrows+1) rows, and remaing
 # (num_smallcol) columns will have (nrows) rows.
- nrows, num_largecol = divmod(len(handleboxes), self._ncol)
- num_smallcol = self._ncol-num_largecol
+ ncol = min(self._ncol, len(handleboxes))
+ nrows, num_largecol = divmod(len(handleboxes), ncol)
+ num_smallcol = ncol-num_largecol
 
 # starting index of each column and number of rows in it.
 largecol = safezip(range(0, num_largecol*(nrows+1), (nrows+1)),
@@ -860,3 +861,4 @@
 
 return ox, oy
 
+
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <lee...@us...> - 2009年08月31日 00:32:24
Revision: 7607
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7607&view=rev
Author: leejjoon
Date: 2009年08月31日 00:32:12 +0000 (2009年8月31日)
Log Message:
-----------
fix sf bug #2839919
Modified Paths:
--------------
 branches/v0_99_maint/lib/matplotlib/legend.py
Modified: branches/v0_99_maint/lib/matplotlib/legend.py
===================================================================
--- branches/v0_99_maint/lib/matplotlib/legend.py	2009年08月30日 20:26:05 UTC (rev 7606)
+++ branches/v0_99_maint/lib/matplotlib/legend.py	2009年08月31日 00:32:12 UTC (rev 7607)
@@ -587,8 +587,9 @@
 # We calculate number of lows in each column. The first
 # (num_largecol) columns will have (nrows+1) rows, and remaing
 # (num_smallcol) columns will have (nrows) rows.
- nrows, num_largecol = divmod(len(handleboxes), self._ncol)
- num_smallcol = self._ncol-num_largecol
+ ncol = min(self._ncol, len(handleboxes))
+ nrows, num_largecol = divmod(len(handleboxes), ncol)
+ num_smallcol = ncol-num_largecol
 
 # starting index of each column and number of rows in it.
 largecol = safezip(range(0, num_largecol*(nrows+1), (nrows+1)),
@@ -849,3 +850,4 @@
 
 return ox, oy
 
+
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <lee...@us...> - 2009年08月30日 20:26:16
Revision: 7606
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7606&view=rev
Author: leejjoon
Date: 2009年08月30日 20:26:05 +0000 (2009年8月30日)
Log Message:
-----------
add TextPath class in text.py. Update demo_text_path.py
Modified Paths:
--------------
 trunk/matplotlib/examples/pylab_examples/demo_text_path.py
 trunk/matplotlib/lib/matplotlib/text.py
Modified: trunk/matplotlib/examples/pylab_examples/demo_text_path.py
===================================================================
--- trunk/matplotlib/examples/pylab_examples/demo_text_path.py	2009年08月30日 18:30:29 UTC (rev 7605)
+++ trunk/matplotlib/examples/pylab_examples/demo_text_path.py	2009年08月30日 20:26:05 UTC (rev 7606)
@@ -4,147 +4,54 @@
 import matplotlib.pyplot as plt
 from matplotlib.image import BboxImage
 import numpy as np
-from matplotlib.transforms import Affine2D, IdentityTransform
+from matplotlib.transforms import IdentityTransform
 
-import matplotlib.font_manager as font_manager
-from matplotlib.ft2font import FT2Font, KERNING_DEFAULT, LOAD_NO_HINTING
-from matplotlib.font_manager import FontProperties
-from matplotlib.path import Path
 import matplotlib.patches as mpatches
 
 from matplotlib.offsetbox import AnnotationBbox,\
 AnchoredOffsetbox, AuxTransformBox
 
-#from matplotlib.offsetbox import
-
 from matplotlib.cbook import get_sample_data
 
+from matplotlib.text import TextPath
 
-class TextPatch(mpatches.PathPatch):
 
- FONT_SCALE = 100.
+class PathClippedImagePatch(mpatches.PathPatch):
+ """
+ The given image is used to draw the face of the patch. Internally,
+ it uses BboxImage whose clippath set to the path of the patch.
 
- def __init__(self, xy, s, size=None, prop=None, bbox_image=None,
- *kl, **kwargs):
- if prop is None:
- prop = FontProperties()
-
- if size is None:
- size = prop.get_size_in_points()
-
- self._xy = xy
- self.set_size(size)
-
- self.text_path = self.text_get_path(prop, s)
-
- mpatches.PathPatch.__init__(self, self.text_path, *kl, **kwargs)
-
+ FIXME : The result is currently dpi dependent.
+ """
+ def __init__(self, path, bbox_image, **kwargs):
+ mpatches.PathPatch.__init__(self, path, **kwargs)
+ self._facecolor = "none"
 self._init_bbox_image(bbox_image)
 
-
+ def set_facecolor(self, color):
+ pass
+ 
 def _init_bbox_image(self, im):
 
- if im is None:
- self.bbox_image = None
- else:
- bbox_image = BboxImage(self.get_window_extent,
- norm = None,
- origin=None,
- )
- bbox_image.set_transform(IdentityTransform())
+ bbox_image = BboxImage(self.get_window_extent,
+ norm = None,
+ origin=None,
+ )
+ bbox_image.set_transform(IdentityTransform())
 
- bbox_image.set_data(im)
- self.bbox_image = bbox_image
+ bbox_image.set_data(im)
+ self.bbox_image = bbox_image
 
 def draw(self, renderer=None):
 
 
- if self.bbox_image is not None:
- # the clip path must be updated every draw. any solution? -JJ
- self.bbox_image.set_clip_path(self.text_path, self.get_transform())
- self.bbox_image.draw(renderer)
+ # the clip path must be updated every draw. any solution? -JJ
+ self.bbox_image.set_clip_path(self._path, self.get_transform())
+ self.bbox_image.draw(renderer)
 
 mpatches.PathPatch.draw(self, renderer)
 
 
- def set_size(self, size):
- self._size = size
-
- def get_size(self):
- return self._size
-
- def get_patch_transform(self):
- tr = Affine2D().scale(self._size/self.FONT_SCALE, self._size/self.FONT_SCALE)
- return tr.translate(*self._xy)
-
- def glyph_char_path(self, glyph, currx=0.):
-
- verts, codes = [], []
- for step in glyph.path:
- if step[0] == 0: # MOVE_TO
- verts.append((step[1], step[2]))
- codes.append(Path.MOVETO)
- elif step[0] == 1: # LINE_TO
- verts.append((step[1], step[2]))
- codes.append(Path.LINETO)
- elif step[0] == 2: # CURVE3
- verts.extend([(step[1], step[2]),
- (step[3], step[4])])
- codes.extend([Path.CURVE3, Path.CURVE3])
- elif step[0] == 3: # CURVE4
- verts.extend([(step[1], step[2]),
- (step[3], step[4]),
- (step[5], step[6])])
- codes.extend([Path.CURVE4, Path.CURVE4, Path.CURVE4])
- elif step[0] == 4: # ENDPOLY
- verts.append((0, 0,))
- codes.append(Path.CLOSEPOLY)
-
- verts = [(x+currx, y) for (x,y) in verts]
-
- return verts, codes
-
-
- def text_get_path(self, prop, s):
-
- fname = font_manager.findfont(prop)
- font = FT2Font(str(fname))
-
- font.set_size(self.FONT_SCALE, 72)
-
- cmap = font.get_charmap()
- lastgind = None
-
- currx = 0
-
- verts, codes = [], []
-
- for c in s:
-
- ccode = ord(c)
- gind = cmap.get(ccode)
- if gind is None:
- ccode = ord('?')
- gind = 0
- glyph = font.load_char(ccode, flags=LOAD_NO_HINTING)
-
-
- if lastgind is not None:
- kern = font.get_kerning(lastgind, gind, KERNING_DEFAULT)
- else:
- kern = 0
- currx += (kern / 64.0) #/ (self.FONT_SCALE)
-
- verts1, codes1 = self.glyph_char_path(glyph, currx)
- verts.extend(verts1)
- codes.extend(codes1)
-
-
- currx += (glyph.linearHoriAdvance / 65536.0) #/ (self.FONT_SCALE)
- lastgind = gind
-
- return Path(verts, codes)
-
 if 1:
 
 fig = plt.figure(1)
@@ -156,11 +63,13 @@
 from matplotlib._png import read_png
 fn = get_sample_data("lena.png", asfileobj=False)
 arr = read_png(fn)
- p = TextPatch((0, 0), "!?", size=150, fc="none", ec="k",
- bbox_image=arr,
- transform=IdentityTransform())
- p.set_clip_on(False)
 
+ text_path = TextPath((0, 0), "!?", size=150)
+ p = PathClippedImagePatch(text_path, arr, ec="k",
+ transform=IdentityTransform())
+
+ #p.set_clip_on(False)
+
 # make offset box
 offsetbox = AuxTransformBox(IdentityTransform())
 offsetbox.add_artist(p)
@@ -176,21 +85,21 @@
 
 ax = plt.subplot(212)
 
- shadow1 = TextPatch((3, -2), "TextPath", size=70, fc="none", ec="0.6", lw=3,
- transform=IdentityTransform())
- shadow2 = TextPatch((3, -2), "TextPath", size=70, fc="0.3", ec="none",
- transform=IdentityTransform())
-
 arr = np.arange(256).reshape(1,256)/256.
- text_path = TextPatch((0, 0), "TextPath", size=70, fc="none", ec="none", lw=1,
- bbox_image=arr,
- transform=IdentityTransform())
 
+ text_path = TextPath((0, 0), "TextPath", size=70)
+ text_patch = PathClippedImagePatch(text_path, arr, ec="none",
+ transform=IdentityTransform())
+
+ shadow1 = mpatches.Shadow(text_patch, 3, -2, props=dict(fc="none", ec="0.6", lw=3))
+ shadow2 = mpatches.Shadow(text_patch, 3, -2, props=dict(fc="0.3", ec="none"))
+
+
 # make offset box
 offsetbox = AuxTransformBox(IdentityTransform())
 offsetbox.add_artist(shadow1)
 offsetbox.add_artist(shadow2)
- offsetbox.add_artist(text_path)
+ offsetbox.add_artist(text_patch)
 
 # place the anchored offset box using AnnotationBbox
 ab = AnnotationBbox(offsetbox, (0.5, 0.5),
@@ -198,16 +107,13 @@
 boxcoords="offset points",
 box_alignment=(0.5,0.5),
 )
+ #text_path.set_size(10)
 
-
 ax.add_artist(ab)
 
 ax.set_xlim(0, 1)
 ax.set_ylim(0, 1)
 
 
-
-
-
 plt.draw()
 plt.show()
Modified: trunk/matplotlib/lib/matplotlib/text.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/text.py	2009年08月30日 18:30:29 UTC (rev 7605)
+++ trunk/matplotlib/lib/matplotlib/text.py	2009年08月30日 20:26:05 UTC (rev 7606)
@@ -23,6 +23,11 @@
 
 import matplotlib.nxutils as nxutils
 
+from matplotlib.path import Path
+import matplotlib.font_manager as font_manager
+from matplotlib.ft2font import FT2Font, KERNING_DEFAULT, LOAD_NO_HINTING
+
+
 def _process_text_args(override, fontdict=None, **kwargs):
 "Return an override dict. See :func:`~pyplot.text' docstring for info"
 
@@ -1764,3 +1769,174 @@
 
 docstring.interpd.update(Annotation=Annotation.__init__.__doc__)
 
+
+class TextPath(Path):
+ """
+ Create a path from the text.
+ """
+
+ # TODO : math text is currently not supported, but it would not be easy.
+
+ FONT_SCALE = 100.
+
+ def __init__(self, xy, s, size=None, prop=None,
+ _interpolation_steps=1,
+ *kl, **kwargs):
+ """
+ Create a path from the text. No support for TeX yet. Note that
+ it simply is a path, not an artist. You need to use the
+ PathPatch (or other artists) to draw this path onto the
+ canvas.
+ 
+ xy : position of the text.
+ s : text
+ size : font size
+ prop : font property
+ """
+
+
+ if prop is None:
+ prop = FontProperties()
+
+ if size is None:
+ size = prop.get_size_in_points()
+
+
+ self._xy = xy
+ self.set_size(size)
+
+ self._cached_vertices = None
+
+ self._vertices, self._codes = self.text_get_vertices_codes(prop, s)
+
+ self.should_simplify = False
+ self.simplify_threshold = rcParams['path.simplify_threshold']
+ self.has_nonfinite = False
+ self._interpolation_steps = _interpolation_steps
+
+
+ def set_size(self, size):
+ """
+ set the size of the text
+ """
+ self._size = size
+ self._invalid = True
+
+ def get_size(self):
+ """
+ get the size of the text
+ """
+ return self._size
+
+ def _get_vertices(self):
+ """
+ Return the cached path after updating it if necessary.
+ """
+ self._revalidate_path()
+ return self._cached_vertices
+
+ def _get_codes(self):
+ """
+ Return the codes
+ """
+ return self._codes
+ 
+ vertices = property(_get_vertices)
+ codes = property(_get_codes)
+
+ def _revalidate_path(self):
+ """
+ update the path if necessary.
+
+ The path for the text is initially create with the font size
+ of FONT_SCALE, and this path is rescaled to other size when
+ necessary.
+
+ """
+ if self._invalid or \
+ (self._cached_vertices is None):
+ tr = Affine2D().scale(self._size/self.FONT_SCALE,
+ self._size/self.FONT_SCALE).translate(*self._xy)
+ self._cached_vertices = tr.transform(self._vertices)
+ self._invalid = False
+
+
+ def glyph_char_path(self, glyph, currx=0.):
+ """
+ convert the glyph to vertices and codes. Mostly copied from
+ backend_svg.py.
+ """
+ verts, codes = [], []
+ for step in glyph.path:
+ if step[0] == 0: # MOVE_TO
+ verts.append((step[1], step[2]))
+ codes.append(Path.MOVETO)
+ elif step[0] == 1: # LINE_TO
+ verts.append((step[1], step[2]))
+ codes.append(Path.LINETO)
+ elif step[0] == 2: # CURVE3
+ verts.extend([(step[1], step[2]),
+ (step[3], step[4])])
+ codes.extend([Path.CURVE3, Path.CURVE3])
+ elif step[0] == 3: # CURVE4
+ verts.extend([(step[1], step[2]),
+ (step[3], step[4]),
+ (step[5], step[6])])
+ codes.extend([Path.CURVE4, Path.CURVE4, Path.CURVE4])
+ elif step[0] == 4: # ENDPOLY
+ verts.append((0, 0,))
+ codes.append(Path.CLOSEPOLY)
+
+ verts = [(x+currx, y) for (x,y) in verts]
+
+ return verts, codes
+
+
+ def text_get_vertices_codes(self, prop, s):
+ """
+ convert the string *s* to vertices and codes using the
+ provided font property *prop*. Mostly copied from
+ backend_svg.py.
+ """
+
+ fname = font_manager.findfont(prop)
+ font = FT2Font(str(fname))
+
+ font.set_size(self.FONT_SCALE, 72)
+
+ cmap = font.get_charmap()
+ lastgind = None
+
+ currx = 0
+
+ verts, codes = [], []
+
+
+ # I'm not sure if I get kernings right. Needs to be verified. -JJL
+
+ for c in s:
+
+ ccode = ord(c)
+ gind = cmap.get(ccode)
+ if gind is None:
+ ccode = ord('?')
+ gind = 0
+ glyph = font.load_char(ccode, flags=LOAD_NO_HINTING)
+
+
+ if lastgind is not None:
+ kern = font.get_kerning(lastgind, gind, KERNING_DEFAULT)
+ else:
+ kern = 0
+ currx += (kern / 64.0) #/ (self.FONT_SCALE)
+
+ verts1, codes1 = self.glyph_char_path(glyph, currx)
+ verts.extend(verts1)
+ codes.extend(codes1)
+
+
+ currx += (glyph.linearHoriAdvance / 65536.0) #/ (self.FONT_SCALE)
+ lastgind = gind
+
+ return verts, codes
+
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 7605
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7605&view=rev
Author: astraw
Date: 2009年08月30日 18:30:29 +0000 (2009年8月30日)
Log Message:
-----------
buildbot: prevent DirectoryUpload failure when all tests pass
Modified Paths:
--------------
 trunk/matplotlib/test/_buildbot_test_postmortem.py
Modified: trunk/matplotlib/test/_buildbot_test_postmortem.py
===================================================================
--- trunk/matplotlib/test/_buildbot_test_postmortem.py	2009年08月30日 18:05:43 UTC (rev 7604)
+++ trunk/matplotlib/test/_buildbot_test_postmortem.py	2009年08月30日 18:30:29 UTC (rev 7605)
@@ -75,6 +75,7 @@
 if 1:
 if os.path.exists(target_dir):
 shutil.rmtree(target_dir)
+ os.makedirs( target_dir ) # prevent buildbot DirectoryUpload failure
 os.chdir('test')
 for fpath in get_recursive_filelist(roots):
 # only images
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <jd...@us...> - 2009年08月30日 18:50:35
Revision: 7603
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7603&view=rev
Author: jdh2358
Date: 2009年08月30日 17:55:08 +0000 (2009年8月30日)
Log Message:
-----------
fix formatter4 unit test and image
Modified Paths:
--------------
 trunk/matplotlib/test/test_matplotlib/TestAxes.py
 trunk/matplotlib/test/test_matplotlib/baseline/TestAxes/formatter_ticker_004.png
Modified: trunk/matplotlib/test/test_matplotlib/TestAxes.py
===================================================================
--- trunk/matplotlib/test/test_matplotlib/TestAxes.py	2009年08月30日 16:29:30 UTC (rev 7602)
+++ trunk/matplotlib/test/test_matplotlib/TestAxes.py	2009年08月30日 17:55:08 UTC (rev 7603)
@@ -86,6 +86,7 @@
 
 fname = self.outFile( "formatter_ticker_004.png" )
 ax.plot( xdata, ydata2, color='green', xunits="hour" )
+ ax.set_xlabel( "x-label 004" )
 fig.savefig( fname )
 self.checkImage( fname )
 
Modified: trunk/matplotlib/test/test_matplotlib/baseline/TestAxes/formatter_ticker_004.png
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 7604
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7604&view=rev
Author: jdh2358
Date: 2009年08月30日 18:05:43 +0000 (2009年8月30日)
Log Message:
-----------
updated baseline empty datetime
Modified Paths:
--------------
 trunk/matplotlib/test/test_matplotlib/baseline/TestAxes/empty_datetime.png
Modified: trunk/matplotlib/test/test_matplotlib/baseline/TestAxes/empty_datetime.png
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 7602
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7602&view=rev
Author: jdh2358
Date: 2009年08月30日 16:29:30 +0000 (2009年8月30日)
Log Message:
-----------
removed known failure decorator for sf bug 2846058
Modified Paths:
--------------
 trunk/matplotlib/test/test_matplotlib/TestAxes.py
Modified: trunk/matplotlib/test/test_matplotlib/TestAxes.py
===================================================================
--- trunk/matplotlib/test/test_matplotlib/TestAxes.py	2009年08月30日 16:25:46 UTC (rev 7601)
+++ trunk/matplotlib/test/test_matplotlib/TestAxes.py	2009年08月30日 16:29:30 UTC (rev 7602)
@@ -58,7 +58,6 @@
 self.checkImage( fname )
 
 #--------------------------------------------------------------------
- @knownfailureif(True, "Fails due to SF bug 2846058")
 def test_formatter_ticker( self ):
 """Test Some formatter and ticker issues."""
 
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <jd...@us...> - 2009年08月30日 16:25:54
Revision: 7601
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7601&view=rev
Author: jdh2358
Date: 2009年08月30日 16:25:46 +0000 (2009年8月30日)
Log Message:
-----------
Merged revisions 7598,7600 via svnmerge from 
https://matplotlib.svn.sourceforge.net/svnroot/matplotlib/branches/v0_99_maint
........
 r7598 | jdh2358 | 2009年08月30日 08:35:12 -0500 (2009年8月30日) | 1 line
 
 applied Gael's ginput patch
........
 r7600 | jdh2358 | 2009年08月30日 11:22:38 -0500 (2009年8月30日) | 1 line
 
 some unit cleanup; fix sf bug 2846058
........
Modified Paths:
--------------
 trunk/matplotlib/examples/units/annotate_with_units.py
 trunk/matplotlib/examples/units/bar_demo2.py
 trunk/matplotlib/examples/units/radian_demo.py
 trunk/matplotlib/lib/matplotlib/axes.py
 trunk/matplotlib/lib/matplotlib/blocking_input.py
 trunk/matplotlib/lib/matplotlib/collections.py
 trunk/matplotlib/lib/matplotlib/figure.py
Property Changed:
----------------
 trunk/matplotlib/
Property changes on: trunk/matplotlib
___________________________________________________________________
Modified: svnmerge-integrated
 - /branches/mathtex:1-7263 /branches/v0_98_5_maint:1-7253 /branches/v0_99_maint:1-7590
 + /branches/mathtex:1-7263 /branches/v0_98_5_maint:1-7253 /branches/v0_99_maint:1-7600
Modified: trunk/matplotlib/examples/units/annotate_with_units.py
===================================================================
--- trunk/matplotlib/examples/units/annotate_with_units.py	2009年08月30日 16:22:38 UTC (rev 7600)
+++ trunk/matplotlib/examples/units/annotate_with_units.py	2009年08月30日 16:25:46 UTC (rev 7601)
@@ -1,8 +1,7 @@
-
-import pylab
+import matplotlib.pyplot as plt
 from basic_units import cm
 
-fig = pylab.figure()
+fig = plt.figure()
 ax = fig.add_subplot(111)
 
 
@@ -23,5 +22,5 @@
 
 ax.set_xlim(0*cm, 4*cm)
 ax.set_ylim(0*cm, 4*cm)
-pylab.show()
+plt.show()
 
Modified: trunk/matplotlib/examples/units/bar_demo2.py
===================================================================
--- trunk/matplotlib/examples/units/bar_demo2.py	2009年08月30日 16:22:38 UTC (rev 7600)
+++ trunk/matplotlib/examples/units/bar_demo2.py	2009年08月30日 16:25:46 UTC (rev 7601)
@@ -25,11 +25,11 @@
 
 ax3 = fig.add_subplot(2,2,3)
 ax3.bar(cms, cms, bottom=bottom, width=width, xunits=inch, yunits=cm)
-ax3.set_xlim(3, 6) # scalars are interpreted in current units
+ax3.set_xlim(2, 6) # scalars are interpreted in current units
 
 ax4 = fig.add_subplot(2,2,4)
 ax4.bar(cms, cms, bottom=bottom, width=width, xunits=inch, yunits=inch)
 #fig.savefig('simple_conversion_plot.png')
-ax4.set_xlim(3*cm, 6*cm) # cm are converted to inches
+ax4.set_xlim(2*cm, 6*cm) # cm are converted to inches
 
 show()
Modified: trunk/matplotlib/examples/units/radian_demo.py
===================================================================
--- trunk/matplotlib/examples/units/radian_demo.py	2009年08月30日 16:22:38 UTC (rev 7600)
+++ trunk/matplotlib/examples/units/radian_demo.py	2009年08月30日 16:25:46 UTC (rev 7601)
@@ -7,15 +7,15 @@
 from basic_units import radians, degrees, cos
 from matplotlib.pyplot import figure, show
 
-x = np.arange(0, 15, 0.01) * radians
+x = [val*radians for val in np.arange(0, 15, 0.01)]
 
 fig = figure()
 fig.subplots_adjust(hspace=0.3)
 
 ax = fig.add_subplot(211)
-ax.plot(x, cos(x), xunits=radians)
+line1, = ax.plot(x, cos(x), xunits=radians)
 
 ax = fig.add_subplot(212)
-ax.plot(x, cos(x), xunits=degrees)
+line2, = ax.plot(x, cos(x), xunits=degrees)
 
 show()
Modified: trunk/matplotlib/lib/matplotlib/axes.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/axes.py	2009年08月30日 16:22:38 UTC (rev 7600)
+++ trunk/matplotlib/lib/matplotlib/axes.py	2009年08月30日 16:25:46 UTC (rev 7601)
@@ -203,11 +203,25 @@
 if self.axes.xaxis is not None and self.axes.yaxis is not None:
 bx = self.axes.xaxis.update_units(x)
 by = self.axes.yaxis.update_units(y)
- if bx:
- x = self.axes.convert_xunits(x)
- if by:
- y = self.axes.convert_yunits(y)
 
+	 if self.command!='plot':
+ # the Line2D class can handle unitized data, with
+ # support for post hoc unit changes etc. Other mpl
+ # artists, eg Polygon which _process_plot_var_args
+ # also serves on calls to fill, cannot. So this is a
+ # hack to say: if you are not "plot", which is
+ # creating Line2D, then convert the data now to
+ # floats. If you are plot, pass the raw data through
+ # to Line2D which will handle the conversion. So
+ # polygons will not support post hoc conversions of
+ # the unit type since they are not storing the orig
+ # data. Hopefully we can rationalize this at a later
+ # date - JDH
+ if bx:
+ x = self.axes.convert_xunits(x)
+ if by:
+ y = self.axes.convert_yunits(y)
+
 x = np.atleast_1d(x) #like asanyarray, but converts scalar to array
 y = np.atleast_1d(y)
 if x.shape[0] != y.shape[0]:
@@ -4270,10 +4284,14 @@
 if self.xaxis is not None:
 left = self.convert_xunits( left )
 width = self.convert_xunits( width )
+ if xerr is not None:
+ xerr = self.convert_xunits( xerr )
 
 if self.yaxis is not None:
 bottom = self.convert_yunits( bottom )
 height = self.convert_yunits( height )
+ if yerr is not None:
+ yerr = self.convert_yunits( yerr )
 
 if align == 'edge':
 pass
Modified: trunk/matplotlib/lib/matplotlib/blocking_input.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/blocking_input.py	2009年08月30日 16:22:38 UTC (rev 7600)
+++ trunk/matplotlib/lib/matplotlib/blocking_input.py	2009年08月30日 16:25:46 UTC (rev 7601)
@@ -17,9 +17,6 @@
 Note: Subclass of BlockingMouseInput. Used by clabel
 """
 
-import time
-import numpy as np
-
 from matplotlib import path, verbose
 from matplotlib.cbook import is_sequence_of_strings
 
@@ -151,7 +148,7 @@
 button = event.button
 
 if button == self.button_pop:
- self.mouse_event_pop(event,-1)
+ self.mouse_event_pop(event)
 elif button == self.button_stop:
 self.mouse_event_stop(event)
 else:
@@ -162,7 +159,7 @@
 Process a key click event. This maps certain keys to appropriate
 mouse click events.
 '''
- 
+
 event = self.events[-1]
 key = event.key.lower()
 
Modified: trunk/matplotlib/lib/matplotlib/collections.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/collections.py	2009年08月30日 16:22:38 UTC (rev 7600)
+++ trunk/matplotlib/lib/matplotlib/collections.py	2009年08月30日 16:25:46 UTC (rev 7601)
@@ -819,7 +819,9 @@
 def set_segments(self, segments):
 if segments is None: return
 _segments = []
+
 for seg in segments:
+
 if not np.ma.isMaskedArray(seg):
 seg = np.asarray(seg, np.float_)
 _segments.append(seg)
Modified: trunk/matplotlib/lib/matplotlib/figure.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/figure.py	2009年08月30日 16:22:38 UTC (rev 7600)
+++ trunk/matplotlib/lib/matplotlib/figure.py	2009年08月30日 16:25:46 UTC (rev 7601)
@@ -12,12 +12,11 @@
 
 """
 import numpy as np
-import time
 
 import artist
 from artist import Artist, allow_rasterization
 from axes import Axes, SubplotBase, subplot_class_factory
-from cbook import flatten, allequal, Stack, iterable, dedent
+from cbook import flatten, allequal, Stack, iterable
 import _image
 import colorbar as cbar
 from image import FigureImage
@@ -1118,6 +1117,12 @@
 
 Right clicking cancels last input.
 
+ The buttons used for the various actions (adding points, removing
+ points, terminating the inputs) can be overriden via the
+ arguments *mouse_add*, *mouse_pop* and *mouse_stop*, that give
+ the associated mouse button: 1 for left, 2 for middle, 3 for
+ right.
+
 The keyboard can also be used to select points in case your mouse
 does not have one or more of the buttons. The delete and backspace
 keys act like right clicking (i.e., remove last point), the enter key
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <jd...@us...> - 2009年08月30日 16:22:47
Revision: 7600
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7600&view=rev
Author: jdh2358
Date: 2009年08月30日 16:22:38 +0000 (2009年8月30日)
Log Message:
-----------
some unit cleanup; fix sf bug 2846058
Modified Paths:
--------------
 branches/v0_99_maint/examples/units/annotate_with_units.py
 branches/v0_99_maint/examples/units/bar_demo2.py
 branches/v0_99_maint/examples/units/radian_demo.py
 branches/v0_99_maint/lib/matplotlib/axes.py
 branches/v0_99_maint/lib/matplotlib/collections.py
Modified: branches/v0_99_maint/examples/units/annotate_with_units.py
===================================================================
--- branches/v0_99_maint/examples/units/annotate_with_units.py	2009年08月30日 15:43:39 UTC (rev 7599)
+++ branches/v0_99_maint/examples/units/annotate_with_units.py	2009年08月30日 16:22:38 UTC (rev 7600)
@@ -1,8 +1,7 @@
-
-import pylab
+import matplotlib.pyplot as plt
 from basic_units import cm
 
-fig = pylab.figure()
+fig = plt.figure()
 ax = fig.add_subplot(111)
 
 
@@ -23,5 +22,5 @@
 
 ax.set_xlim(0*cm, 4*cm)
 ax.set_ylim(0*cm, 4*cm)
-pylab.show()
+plt.show()
 
Modified: branches/v0_99_maint/examples/units/bar_demo2.py
===================================================================
--- branches/v0_99_maint/examples/units/bar_demo2.py	2009年08月30日 15:43:39 UTC (rev 7599)
+++ branches/v0_99_maint/examples/units/bar_demo2.py	2009年08月30日 16:22:38 UTC (rev 7600)
@@ -25,11 +25,11 @@
 
 ax3 = fig.add_subplot(2,2,3)
 ax3.bar(cms, cms, bottom=bottom, width=width, xunits=inch, yunits=cm)
-ax3.set_xlim(3, 6) # scalars are interpreted in current units
+ax3.set_xlim(2, 6) # scalars are interpreted in current units
 
 ax4 = fig.add_subplot(2,2,4)
 ax4.bar(cms, cms, bottom=bottom, width=width, xunits=inch, yunits=inch)
 #fig.savefig('simple_conversion_plot.png')
-ax4.set_xlim(3*cm, 6*cm) # cm are converted to inches
+ax4.set_xlim(2*cm, 6*cm) # cm are converted to inches
 
 show()
Modified: branches/v0_99_maint/examples/units/radian_demo.py
===================================================================
--- branches/v0_99_maint/examples/units/radian_demo.py	2009年08月30日 15:43:39 UTC (rev 7599)
+++ branches/v0_99_maint/examples/units/radian_demo.py	2009年08月30日 16:22:38 UTC (rev 7600)
@@ -7,15 +7,15 @@
 from basic_units import radians, degrees, cos
 from matplotlib.pyplot import figure, show
 
-x = np.arange(0, 15, 0.01) * radians
+x = [val*radians for val in np.arange(0, 15, 0.01)]
 
 fig = figure()
 fig.subplots_adjust(hspace=0.3)
 
 ax = fig.add_subplot(211)
-ax.plot(x, cos(x), xunits=radians)
+line1, = ax.plot(x, cos(x), xunits=radians)
 
 ax = fig.add_subplot(212)
-ax.plot(x, cos(x), xunits=degrees)
+line2, = ax.plot(x, cos(x), xunits=degrees)
 
 show()
Modified: branches/v0_99_maint/lib/matplotlib/axes.py
===================================================================
--- branches/v0_99_maint/lib/matplotlib/axes.py	2009年08月30日 15:43:39 UTC (rev 7599)
+++ branches/v0_99_maint/lib/matplotlib/axes.py	2009年08月30日 16:22:38 UTC (rev 7600)
@@ -203,11 +203,25 @@
 if self.axes.xaxis is not None and self.axes.yaxis is not None:
 bx = self.axes.xaxis.update_units(x)
 by = self.axes.yaxis.update_units(y)
- if bx:
- x = self.axes.convert_xunits(x)
- if by:
- y = self.axes.convert_yunits(y)
 
+	 if self.command!='plot':
+ # the Line2D class can handle unitized data, with
+ # support for post hoc unit changes etc. Other mpl
+ # artists, eg Polygon which _process_plot_var_args
+ # also serves on calls to fill, cannot. So this is a
+ # hack to say: if you are not "plot", which is
+ # creating Line2D, then convert the data now to
+ # floats. If you are plot, pass the raw data through
+ # to Line2D which will handle the conversion. So
+ # polygons will not support post hoc conversions of
+ # the unit type since they are not storing the orig
+ # data. Hopefully we can rationalize this at a later
+ # date - JDH
+ if bx:
+ x = self.axes.convert_xunits(x)
+ if by:
+ y = self.axes.convert_yunits(y)
+
 x = np.atleast_1d(x) #like asanyarray, but converts scalar to array
 y = np.atleast_1d(y)
 if x.shape[0] != y.shape[0]:
@@ -4255,10 +4269,14 @@
 if self.xaxis is not None:
 left = self.convert_xunits( left )
 width = self.convert_xunits( width )
+ if xerr is not None:
+ xerr = self.convert_xunits( xerr )
 
 if self.yaxis is not None:
 bottom = self.convert_yunits( bottom )
 height = self.convert_yunits( height )
+ if yerr is not None:
+ yerr = self.convert_yunits( yerr )
 
 if align == 'edge':
 pass
Modified: branches/v0_99_maint/lib/matplotlib/collections.py
===================================================================
--- branches/v0_99_maint/lib/matplotlib/collections.py	2009年08月30日 15:43:39 UTC (rev 7599)
+++ branches/v0_99_maint/lib/matplotlib/collections.py	2009年08月30日 16:22:38 UTC (rev 7600)
@@ -931,7 +931,9 @@
 def set_segments(self, segments):
 if segments is None: return
 _segments = []
+
 for seg in segments:
+
 if not np.ma.isMaskedArray(seg):
 seg = np.asarray(seg, np.float_)
 _segments.append(seg)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <as...@us...> - 2009年08月30日 15:43:47
Revision: 7599
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7599&view=rev
Author: astraw
Date: 2009年08月30日 15:43:39 +0000 (2009年8月30日)
Log Message:
-----------
buildbot: delete build directory when re-building
Modified Paths:
--------------
 trunk/matplotlib/test/_buildbot_mac_sage.sh
Modified: trunk/matplotlib/test/_buildbot_mac_sage.sh
===================================================================
--- trunk/matplotlib/test/_buildbot_mac_sage.sh	2009年08月30日 13:35:12 UTC (rev 7598)
+++ trunk/matplotlib/test/_buildbot_mac_sage.sh	2009年08月30日 15:43:39 UTC (rev 7599)
@@ -1,6 +1,7 @@
 #!/bin/bash
 set -e
 rm -rf ${HOME}/.matplotlib/*
+rm -rf build
 
 export PYTHON=${HOME}/dev/bin/python
 export PREFIX=${HOME}/devbb 
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <jd...@us...> - 2009年08月30日 13:35:26
Revision: 7598
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7598&view=rev
Author: jdh2358
Date: 2009年08月30日 13:35:12 +0000 (2009年8月30日)
Log Message:
-----------
applied Gael's ginput patch
Modified Paths:
--------------
 branches/v0_99_maint/lib/matplotlib/blocking_input.py
 branches/v0_99_maint/lib/matplotlib/figure.py
Modified: branches/v0_99_maint/lib/matplotlib/blocking_input.py
===================================================================
--- branches/v0_99_maint/lib/matplotlib/blocking_input.py	2009年08月30日 10:33:01 UTC (rev 7597)
+++ branches/v0_99_maint/lib/matplotlib/blocking_input.py	2009年08月30日 13:35:12 UTC (rev 7598)
@@ -17,9 +17,6 @@
 Note: Subclass of BlockingMouseInput. Used by clabel
 """
 
-import time
-import numpy as np
-
 from matplotlib import path, verbose
 from matplotlib.cbook import is_sequence_of_strings
 
@@ -151,7 +148,7 @@
 button = event.button
 
 if button == self.button_pop:
- self.mouse_event_pop(event,-1)
+ self.mouse_event_pop(event)
 elif button == self.button_stop:
 self.mouse_event_stop(event)
 else:
@@ -162,7 +159,7 @@
 Process a key click event. This maps certain keys to appropriate
 mouse click events.
 '''
- 
+
 event = self.events[-1]
 key = event.key.lower()
 
Modified: branches/v0_99_maint/lib/matplotlib/figure.py
===================================================================
--- branches/v0_99_maint/lib/matplotlib/figure.py	2009年08月30日 10:33:01 UTC (rev 7597)
+++ branches/v0_99_maint/lib/matplotlib/figure.py	2009年08月30日 13:35:12 UTC (rev 7598)
@@ -12,7 +12,6 @@
 
 """
 import numpy as np
-import time
 
 import artist
 from artist import Artist, allow_rasterization
@@ -1105,6 +1104,12 @@
 
 Right clicking cancels last input.
 
+ The buttons used for the various actions (adding points, removing
+ points, terminating the inputs) can be overriden via the
+ arguments *mouse_add*, *mouse_pop* and *mouse_stop*, that give
+ the associated mouse button: 1 for left, 2 for middle, 3 for
+ right.
+
 The keyboard can also be used to select points in case your mouse
 does not have one or more of the buttons. The delete and backspace
 keys act like right clicking (i.e., remove last point), the enter key
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
From: <jo...@us...> - 2009年08月30日 10:33:12
Revision: 7597
 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=7597&view=rev
Author: jouni
Date: 2009年08月30日 10:33:01 +0000 (2009年8月30日)
Log Message:
-----------
Improve multipage pdf documentation
Modified Paths:
--------------
 trunk/matplotlib/doc/api/index_backend_api.rst
 trunk/matplotlib/doc/faq/howto_faq.rst
 trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py
 trunk/matplotlib/lib/matplotlib/figure.py
Added Paths:
-----------
 trunk/matplotlib/doc/api/backend_pdf_api.rst
Added: trunk/matplotlib/doc/api/backend_pdf_api.rst
===================================================================
--- trunk/matplotlib/doc/api/backend_pdf_api.rst	 (rev 0)
+++ trunk/matplotlib/doc/api/backend_pdf_api.rst	2009年08月30日 10:33:01 UTC (rev 7597)
@@ -0,0 +1,7 @@
+
+:mod:`matplotlib.backends.backend_pdf`
+======================================
+
+.. automodule:: matplotlib.backends.backend_pdf
+ :members:
+ :show-inheritance:
Modified: trunk/matplotlib/doc/api/index_backend_api.rst
===================================================================
--- trunk/matplotlib/doc/api/index_backend_api.rst	2009年08月30日 06:29:58 UTC (rev 7596)
+++ trunk/matplotlib/doc/api/index_backend_api.rst	2009年08月30日 10:33:01 UTC (rev 7597)
@@ -8,5 +8,6 @@
 backend_gtkagg_api.rst
 backend_qt4agg_api.rst
 backend_wxagg_api.rst
+ backend_pdf_api.rst
 dviread.rst
 type1font.rst
Modified: trunk/matplotlib/doc/faq/howto_faq.rst
===================================================================
--- trunk/matplotlib/doc/faq/howto_faq.rst	2009年08月30日 06:29:58 UTC (rev 7596)
+++ trunk/matplotlib/doc/faq/howto_faq.rst	2009年08月30日 10:33:01 UTC (rev 7597)
@@ -68,6 +68,35 @@
 ax.set_xlabel('volts', alpha=0.5)
 
 
+.. _howto-multipage:
+
+Save multiple plots in one pdf file
+-----------------------------------
+
+Many image file formats can only have one image per file, but some
+formats support multi-page files. Currently only the pdf backend has
+support for this. To make a multi-page pdf file, first initialize the
+file::
+
+ from matplotlib.backends.backend_pdf import PdfPages
+ pp = PdfPages('multipage.pdf')
+
+You can give the :class:`~matplotlib.backends.backend_pdf.PdfPages`
+object to :func:`~matplotlib.pyplot.savefig`, but you have to specify
+the format::
+
+ savefig(pp, format='pdf')
+
+A simpler way is to call
+:meth:`PdfPages.savefig <matplotlib.backends.backend_pdf.PdfPages.savefig>`::
+
+ pp.savefig()
+
+Finally, the multipage pdf object has to be closed::
+
+ pp.close()
+
+
 .. _howto-subplots-adjust:
 
 Move the edge of an axes to make room for tick labels
Modified: trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py	2009年08月30日 06:29:58 UTC (rev 7596)
+++ trunk/matplotlib/lib/matplotlib/backends/backend_pdf.py	2009年08月30日 10:33:01 UTC (rev 7597)
@@ -348,7 +348,7 @@
 self.compressobj = None
 
 class PdfFile(object):
- """PDF file with one page."""
+ """PDF file object."""
 
 def __init__(self, filename):
 self.nextObject = 1 # next free object id
@@ -1923,18 +1923,18 @@
 """
 A multi-page PDF file.
 
- Use like this:
+ Use like this::
 
- # Initialize:
- pdf_pages = PdfPages('foo.pdf')
+ # Initialize:
+ pp = PdfPages('foo.pdf')
 
- # As many times as you like, create a figure fig, then either:
- fig.savefig(pdf_pages, format='pdf') # note the format argument!
- # or:
- pdf_pages.savefig(fig)
+ # As many times as you like, create a figure fig, then either:
+ fig.savefig(pp, format='pdf') # note the format argument!
+ # or:
+ pp.savefig(fig)
 
- # Once you are done, remember to close the object:
- pdf_pages.close()
+ # Once you are done, remember to close the object:
+ pp.close()
 
 (In reality PdfPages is a thin wrapper around PdfFile, in order to
 avoid confusion when using savefig and forgetting the format
Modified: trunk/matplotlib/lib/matplotlib/figure.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/figure.py	2009年08月30日 06:29:58 UTC (rev 7596)
+++ trunk/matplotlib/lib/matplotlib/figure.py	2009年08月30日 10:33:01 UTC (rev 7597)
@@ -981,10 +981,14 @@
 Arguments:
 
 *fname*:
- A string containing a path to a filename, or a Python file-like object.
+ A string containing a path to a filename, or a Python file-like object,
+ or possibly some backend-dependent object such as
+ :class:`~matplotlib.backends.backend_pdf.PdfPages`.
 
 If *format* is *None* and *fname* is a string, the output
 format is deduced from the extension of the filename.
+ If *fname* is not a string, remember to specify *format* to
+ ensure that the correct backend is used.
 
 Keyword arguments:
 
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.

Showing results of 296

1 2 3 .. 12 > >> (Page 1 of 12)
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.
Thanks for helping keep SourceForge clean.
X





Briefly describe the problem (required):
Upload screenshot of ad (required):
Select a file, or drag & drop file here.
Screenshot instructions:

Click URL instructions:
Right-click on the ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)

More information about our ad policies

Ad destination/click URL:

AltStyle によって変換されたページ (->オリジナル) /