Revision: 4502 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4502&view=rev Author: jdh2358 Date: 2007年11月29日 08:28:07 -0800 (2007年11月29日) Log Message: ----------- Modified Paths: -------------- trunk/htdocs/credits.html.template trunk/htdocs/hthelpers.py trunk/htdocs/screenshots/align_text_large.png trunk/htdocs/screenshots/align_text_small.png trunk/htdocs/screenshots/axes_demo_large.png trunk/htdocs/screenshots/axes_demo_small.png trunk/htdocs/screenshots/barchart_demo_large.png trunk/htdocs/screenshots/barchart_demo_small.png trunk/htdocs/screenshots/date_demo_large.png trunk/htdocs/screenshots/date_demo_small.png trunk/htdocs/screenshots/fill_demo_large.png trunk/htdocs/screenshots/fill_demo_small.png trunk/htdocs/screenshots/finance_work2_large.png trunk/htdocs/screenshots/finance_work2_small.png trunk/htdocs/screenshots/histogram_demo.py trunk/htdocs/screenshots/layer_images_large.png trunk/htdocs/screenshots/layer_images_small.png trunk/htdocs/screenshots/legend_demo_large.png trunk/htdocs/screenshots/legend_demo_small.png trunk/htdocs/screenshots/log_shot_large.png trunk/htdocs/screenshots/log_shot_small.png trunk/htdocs/screenshots/makeshots.py trunk/htdocs/screenshots/mathtext_demo_large.png trunk/htdocs/screenshots/mathtext_demo_small.png trunk/htdocs/screenshots/mri_with_eeg.py trunk/htdocs/screenshots/pcolor_demo_large.png trunk/htdocs/screenshots/pcolor_demo_small.png trunk/htdocs/screenshots/pie_demo_large.png trunk/htdocs/screenshots/pie_demo_small.png trunk/htdocs/screenshots/polar_demo_large.png trunk/htdocs/screenshots/polar_demo_small.png trunk/htdocs/screenshots/scatter_demo2_large.png trunk/htdocs/screenshots/scatter_demo2_small.png trunk/htdocs/screenshots/simple_plot_large.png trunk/htdocs/screenshots/simple_plot_small.png trunk/htdocs/screenshots/slider_demo_large.png trunk/htdocs/screenshots/slider_demo_small.png trunk/htdocs/screenshots/text_themes_large.png trunk/htdocs/screenshots/text_themes_small.png trunk/htdocs/screenshots.html.template trunk/htdocs/whats_new.html.template Added Paths: ----------- trunk/htdocs/screenshots/mathtext_examples.py Modified: trunk/htdocs/credits.html.template =================================================================== --- trunk/htdocs/credits.html.template 2007年11月29日 15:40:42 UTC (rev 4501) +++ trunk/htdocs/credits.html.template 2007年11月29日 16:28:07 UTC (rev 4502) @@ -60,7 +60,8 @@ log plots, added improved support for scalar formatting, and did a lot of work to clean up the <a href=psfrag" rel=nofollow>http://www.ctan.org/tex-archive/help/Catalogue/entries/psfrag.html?action=/tex-archive/macros/latex/contrib/supported/psfrag/>psfrag</a> - LaTeX output. </li> + LaTeX output. He wrote the site.cfg and matplotlib.conf + configuration support</li> <li>Paul Mcguire provided the pyparsing module on which mathtext relies, and made a number of optimizations to the matplotlib @@ -109,6 +110,18 @@ href=http://ipython.scipy.org>ipython</a>/pylab.</li> + <li>Charlie Moad contributed work to matplotlib's Cocoa support and + does the binary builds and releases</li> + + <li>Jouni K. Seppaenen wrote the PDF backend</li> + + <li>Michael Droettboom wrote the enhanced mathtext support, +implementing Knuth's box layout algorithms, and is responsible for +numerous bug-fixes, better font support, and feature enhancements +across the matplotlib backends</li> + + + </ul> Modified: trunk/htdocs/hthelpers.py =================================================================== --- trunk/htdocs/hthelpers.py 2007年11月29日 15:40:42 UTC (rev 4501) +++ trunk/htdocs/hthelpers.py 2007年11月29日 16:28:07 UTC (rev 4502) @@ -7,14 +7,14 @@ 'matplotlib.backends.backend_agg', 'matplotlib.backends.backend_cairo', 'matplotlib.backends.backend_fltkagg', - 'matplotlib.backends.backend_gtkcairo', + 'matplotlib.backends.backend_gtkcairo', 'matplotlib.backends.backend_gd', 'matplotlib.backends.backend_gtk', 'matplotlib.backends.backend_gtkagg', 'matplotlib.backends.backend_paint', 'matplotlib.backends.backend_ps', - 'matplotlib.backends.backend_svg', - 'matplotlib.backends.backend_emf', + 'matplotlib.backends.backend_svg', + 'matplotlib.backends.backend_emf', 'matplotlib.backends.backend_template', 'matplotlib.backends.backend_tkagg', 'matplotlib.backends.backend_qt', @@ -22,13 +22,17 @@ 'matplotlib.backends.backend_wx', 'matplotlib.backends.backend_wxagg', 'matplotlib.cbook', - 'matplotlib.cm', + 'matplotlib.cm', 'matplotlib.collections', + 'matplotlib.colorbar', 'matplotlib.colors', + 'matplotlib.contour', 'matplotlib.dates', + 'matplotlib.dviread', 'matplotlib.figure', 'matplotlib.finance', 'matplotlib.font_manager', + 'matplotlib.fontconfig_pattern', 'matplotlib.ft2font', 'matplotlib.image', 'matplotlib.legend', @@ -37,14 +41,18 @@ 'matplotlib.mlab', 'matplotlib.numerix', 'matplotlib.patches', - 'matplotlib.pylab', + 'matplotlib.pylab', + 'matplotlib.pyplot', + 'matplotlib.quiver', + 'matplotlib.rcsetup', 'matplotlib.table', - 'matplotlib.texmanager', + 'matplotlib.texmanager', 'matplotlib.text', 'matplotlib.ticker', 'matplotlib.toolkits.basemap.basemap', 'matplotlib.transforms', - 'matplotlib.units', + 'matplotlib.type1font', + 'matplotlib.units', 'matplotlib.widgets', ) @@ -72,5 +80,5 @@ func, desc = tup func = func.strip() desc = desc.strip() - these.append((func, desc)) + these.append((func, desc)) return plot_commands Modified: trunk/htdocs/screenshots/align_text_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/align_text_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/axes_demo_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/axes_demo_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/barchart_demo_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/barchart_demo_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/date_demo_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/date_demo_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/fill_demo_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/fill_demo_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/finance_work2_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/finance_work2_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/histogram_demo.py =================================================================== --- trunk/htdocs/screenshots/histogram_demo.py 2007年11月29日 15:40:42 UTC (rev 4501) +++ trunk/htdocs/screenshots/histogram_demo.py 2007年11月29日 16:28:07 UTC (rev 4502) @@ -1,5 +1,4 @@ from matplotlib import rcParams -rcParams['text.fontname'] = 'cmr10' from pylab import * Modified: trunk/htdocs/screenshots/layer_images_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/layer_images_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/legend_demo_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/legend_demo_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/log_shot_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/log_shot_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/makeshots.py =================================================================== --- trunk/htdocs/screenshots/makeshots.py 2007年11月29日 15:40:42 UTC (rev 4501) +++ trunk/htdocs/screenshots/makeshots.py 2007年11月29日 16:28:07 UTC (rev 4502) @@ -7,29 +7,30 @@ default = 'Agg' # do not remove the pngs - some are screenshots! files = { - 'wheeler_demo.py' : default, - 'layer_images.py' : default, - 'finance_work2.py' : default, - 'simple_plot.py' : default, - 'axes_demo.py' : default, - 'histogram_demo.py' : default, + 'wheeler_demo.py' : default, + 'layer_images.py' : default, + 'finance_work2.py' : default, + 'simple_plot.py' : default, + 'axes_demo.py' : default, + 'histogram_demo.py' : default, 'mri_with_eeg.py' : default, 'fill_demo.py' : default, - 'date_demo.py' : default, + 'date_demo.py' : default, 'barchart_demo.py' : default, 'table_demo.py' : default, - 'tex_demo.py' : default, + 'tex_demo.py' : default, 'legend_demo.py' : default, - 'slider_demo.py' : default, - 'mathtext_demo.py' : default, - 'pcolor_demo.py' : default, - 'text_themes.py' : default, + 'slider_demo.py' : default, + 'mathtext_demo.py' : default, + 'mathtext_examples.py' : default, + 'pcolor_demo.py' : default, + 'text_themes.py' : default, 'log_shot.py' : default, - 'align_text.py' : default, - 'scatter_demo2.py' : default, + 'align_text.py' : default, + 'scatter_demo2.py' : default, 'polar_demo.py' : default, 'pie_demo.py' : default, - 'plotmap.py' : default, + 'plotmap.py' : default, 'hstdemo.py' : default, } @@ -43,7 +44,7 @@ 'matplotlib.use("%s")\n' % backend, 'from pylab import *\n' ] - + print '\tdriving %s' % fname for line in file(fname): if line.strip().startswith('from __future__ import division'): continue @@ -59,7 +60,7 @@ file(tmpfile, 'w').write(''.join(lines)) os.system('python %s' % tmpfile) #os.remove(tmpfile) - + for fname, backend in files.items(): make_shot(fname, backend) Modified: trunk/htdocs/screenshots/mathtext_demo_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/mathtext_demo_small.png =================================================================== (Binary files differ) Added: trunk/htdocs/screenshots/mathtext_examples.py =================================================================== --- trunk/htdocs/screenshots/mathtext_examples.py (rev 0) +++ trunk/htdocs/screenshots/mathtext_examples.py 2007年11月29日 16:28:07 UTC (rev 4502) @@ -0,0 +1,89 @@ +#!/usr/bin/env python + +import os, sys, re + +import gc + +stests = [ + r'Kerning: AVA $AVA$', + r'\100ドル.00 $\alpha \_$', + r'$\frac{\100ドル.00}{y}$', + r'$x y$', + r'$x+y\ x=y\ x<y\ x:y\ x,y\ x@y$', + r'100ドル\%y\ x*y\ x/y x\$y$', + r'$x\leftarrow y\ x\forall y\ x-y$', + r'$x \sf x \bf x {\cal X} \rm x$', + r'$x\ x,円x\;x\quad x\qquad x\!x\hspace{ 0.5 }y$', + r'$\{ \rm braces \}$', + r'$\left[\left\lfloor\frac{5}{\frac{\left(3\right)}{4}} y\right)\right]$', + r'$\left(x\right)$', + r'$\sin(x)$', + r'$x_2$', + r'$x^2$', + r'$x^2_y$', + r'$x_y^2$', + r'$\prod_{i=\alpha_{i+1}}^\infty$', + r'$x = \frac{x+\frac{5}{2}}{\frac{y+3}{8}}$', + r'$dz/dt = \gamma x^2 + {\rm sin}(2\pi y+\phi)$', + r'Foo: $\alpha_{i+1}^j = {\rm sin}(2\pi f_j t_i) e^{-5 t_i/\tau}$', + r'$\mathcal{R}\prod_{i=\alpha_{i+1}}^\infty a_i \sin(2 \pi f x_i)$', +# r'$\bigodot \bigoplus {\sf R} a_i{\rm sin}(2 \pi f x_i)$', + r'Variable $i$ is good', + r'$\Delta_i^j$', + r'$\Delta^j_{i+1}$', + r'$\ddot{o}\acute{e}\grave{e}\hat{O}\breve{\imath}\tilde{n}\vec{q}$', + r'$_i$', + r"$\arccos((x^i))$", + r"$\gamma = \frac{x=\frac{6}{8}}{y} \delta$", + r'$\limsup_{x\to\infty}$', + r'$\oint^\infty_0$', + r"$f^'$", + r'$\frac{x_2888}{y}$', + r"$\sqrt[3]{\frac{X_2}{Y}}=5$", + r"$\sqrt[5x\pi]{\prod^\frac{x}{2\pi^2}_\infty}$", + r"$\sqrt[3]{x}=5$", + r'$\frac{X}{\frac{X}{Y}}$', + # From UTR #25 + r"$W^{3\beta}_{\delta_1 \rho_1 \sigma_2} = U^{3\beta}_{\delta_1 \rho_1} + \frac{1}{8 \pi 2} \int^{\alpha_2}_{\alpha_2} d \alpha^\prime_2 \left[\frac{ U^{2\beta}_{\delta_1 \rho_1} - \alpha^\prime_2U^{1\beta}_{\rho_1 \sigma_2} }{U^{0\beta}_{\rho_1 \sigma_2}}\right]$", + r'$\mathcal{H} = \int d \tau \left(\epsilon E^2 + \mu H^2\right)$', + r'$\widehat{abc}\widetilde{def}$', + r'$\Gamma \Delta \Theta \Lambda \Xi \Pi \Sigma \Upsilon \Phi \Psi \Omega$', + r'$\alpha \beta \gamma \delta \epsilon \zeta \eta \theta \iota \lambda \mu \nu \xi \pi \kappa \rho \sigma \tau \upsilon \phi \chi \psi$', + #ur'Generic symbol: $\u23ce \mathrm{\ue0f2 \U0001D538}$' + ] + +from pylab import * + +def doall(): + tests = stests + + figure(figsize=(8, (len(tests) * 1) + 2)) + plot([0, 0], 'r') + grid(False) + axis([0, 3, -len(tests), 0]) + yticks(arange(len(tests)) * -1) + for i, s in enumerate(tests): + print (i, s) + text(0.1, -i, s, fontsize=20) + + savefig('mathtext_examples') + #close('all') + show() + +if '--latex' in sys.argv: + fd = open("mathtext_examples.ltx", "w") + fd.write("\\documentclass{article}\n") + fd.write("\\begin{document}\n") + fd.write("\\begin{enumerate}\n") + + for i, s in enumerate(stests): + s = re.sub(r"(?<!\\)\$", "$$", s) + fd.write("\\item %s\n" % s) + + fd.write("\\end{enumerate}\n") + fd.write("\\end{document}\n") + fd.close() + + os.system("pdflatex mathtext_examples.ltx") +else: + doall() Property changes on: trunk/htdocs/screenshots/mathtext_examples.py ___________________________________________________________________ Name: svn:executable + * Modified: trunk/htdocs/screenshots/mri_with_eeg.py =================================================================== --- trunk/htdocs/screenshots/mri_with_eeg.py 2007年11月29日 15:40:42 UTC (rev 4501) +++ trunk/htdocs/screenshots/mri_with_eeg.py 2007年11月29日 16:28:07 UTC (rev 4502) @@ -4,6 +4,8 @@ faster* """ from __future__ import division +import numpy + from pylab import * from matplotlib.lines import Line2D from matplotlib.transforms import get_bbox_transform, Point, Value, Bbox,\ @@ -14,7 +16,7 @@ if 1: # load the data # data are 256x256 16 bit integers dfile = 'data/s1045.ima' - im = fromstring(file(dfile, 'rb').read(), UInt16).astype(Float) + im = fromstring(file(dfile, 'rb').read(), numpy.uint16).astype(numpy.float) im.shape = 256, 256 if 1: # plot the MRI in pcolor @@ -62,17 +64,17 @@ for i in range(numRows): # effectively a copy of transData - trans = get_bbox_transform(boxin, boxout) + trans = get_bbox_transform(boxin, boxout) offset = (i+1)/(numRows+1) trans.set_offset( (0, offset), transOffset) - + thisLine = Line2D( t, data[:,i]-data[0,i], ) - + thisLine.set_transform(trans) - + ax.add_line(thisLine) ticklocs.append(offset) @@ -85,10 +87,10 @@ ax.set_yticks(ticklocs) for tick in ax.yaxis.get_major_ticks(): tick.label1.set_transform(ax.transAxes) - tick.label2.set_transform(ax.transAxes) + tick.label2.set_transform(ax.transAxes) tick.tick1line.set_transform(ax.transAxes) - tick.tick2line.set_transform(ax.transAxes) - tick.gridline.set_transform(ax.transAxes) + tick.tick2line.set_transform(ax.transAxes) + tick.gridline.set_transform(ax.transAxes) xlabel('time (s)') Modified: trunk/htdocs/screenshots/pcolor_demo_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/pcolor_demo_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/pie_demo_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/pie_demo_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/polar_demo_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/polar_demo_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/scatter_demo2_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/scatter_demo2_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/simple_plot_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/simple_plot_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/slider_demo_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/slider_demo_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/text_themes_large.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots/text_themes_small.png =================================================================== (Binary files differ) Modified: trunk/htdocs/screenshots.html.template =================================================================== --- trunk/htdocs/screenshots.html.template 2007年11月29日 15:40:42 UTC (rev 4501) +++ trunk/htdocs/screenshots.html.template 2007年11月29日 16:28:07 UTC (rev 4502) @@ -101,11 +101,15 @@ ('mathtext_demo', """The mathtext module provides TeX style mathematical expressions using freetype2 and the BaKoMa computer -modern fonts. See the <a href=matplotlib.mathtext.html>mathtext</a> +modern or STIX fonts. See the <a href=matplotlib.mathtext.html>mathtext</a> module for usage, licensing and backend information. matplotlib mathtext is an independent implementation, and does not required TeX or any external packages installed on your computer.""", 1), +('mathtext_examples, """A sampling of the many TeX expressions now +supported by matplotlib's internal mathtext engine. +""", 1), + ('wheeler_demo', """ Plot of Level Set (LSM), Phase Field (PFM) and Sharp Interface Models Modified: trunk/htdocs/whats_new.html.template =================================================================== --- trunk/htdocs/whats_new.html.template 2007年11月29日 15:40:42 UTC (rev 4501) +++ trunk/htdocs/whats_new.html.template 2007年11月29日 16:28:07 UTC (rev 4502) @@ -1,9 +1,54 @@ # To update, add a new entry to the versioninfo dictionary using the -# version string as a key. The value of the dict entry should be a +# version string as a key. The value of the dict entry should be a # tuple of (name, description) tuples versioninfo = {} +versioninfo['0.91.0'] = ( + +('enhanced mathtext', """Complete revamp of matplotlib's internal math layout and rendering +engine. Michael Droetboom has improved the TeX parser to +significantly expand it's coverege, and implemeted Knuth's box layout +algorithms. Additionally, the much anticipated <a +href=http://www.stixfonts.org/>STIX fonts</a> for math expressions +have come online and ship with matplotlib. See a sample of the new mathtext at <a +href=screenshots.html#mathtext_examples>mathtext_examples</a>. +"""), + + +('better configuration', """Darren Dale has provided support for a site.cfg configuration file to +enable users and package maintainers to have better control over the +matplotlib build process. He has also provided a (currently optional) +<a href=http://code.enthought.com/traits/>enthought.traits</a> enabled property configuration to replace +matplotlib's <a href=matplotlibrc>rc</a> configuration using a <a href=http://matplotlib.svn.sourceforge.net/viewvc/matplotlib/trunk/matplotlib/lib/matplotlib/mpl-data/matplotlib.conf.template?view=markup>maplotlib.conf</a> file + +""" +) + +('writing to file-like objects', """You can now pass file like objects (eg StringIO) to all backends for hardcopy. +This has been a much requested feature for usage in web application servers. +""") + +('record array support', """New functions for loading, displaying and saving numpy record arrays in <a href=matplotlib.html>matplotlib.mlab</a>. See for example, <a href=examples/loadrec.py>loadrec.py</a> +"""), + +('pyplot', """Added a module <a href=matplotlib.pyplot.html>matplotlib.pyplot</a> which has all of pylab's plotting functions (eg figure, plot, show, close) but does not import the numpy namepace. This is useful for those who want to use the pylab functionality w/o the namespace clutter. +"""), + +('maskedarray', """Added optional support for the scipy sandbox masked array packaged. Configurable with an rc setting. +"""), + +('plotfile', """Added new pylab/pyplot command <a +href=matplotlib.pylab.html#-plotfile>plotfile</a> for gnuplot style file plotting +"""), + + +('tons of bugfixes and minor enhancements', """See the <a href=CHANGELOG>CHANGELOG<a/> and <a href=API_CHANGES>API_CHANGES<a/> for details. +"""), + + +) + versioninfo['0.90.1'] = ( ('unicode support for latex', """Added LaTeX unicode support. Enable with the 'text.latex.unicode' @@ -68,7 +113,7 @@ columns are plotted as in Matlab"""), ('pcolor now supports vectors', """Made pcolor support vector X and/or Y instead of -requiring 2-D arrays."""), +requiring 2-D arrays."""), ('logarithmic color scaling', """Added LogNorm to colors.py as illustrated by <a href=examples/pcolor_log.py>pcolor_log.py</a>, based on suggestion by @@ -220,7 +265,7 @@ ('Bugs fixed / small features', """\ Applied SF patches 1242648, 1244732. Fixes SF bugs 1238412, 1231611, -1209354, subplot (2,1,1) bug, +1209354, subplot (2,1,1) bug, """), @@ -272,7 +317,7 @@ lines.solid_joinstyle : miter # miter|round|bevel lines.solid_capstyle : projecting # butt|round|projecting </pre> - + """), ('Axes kwargs', """\ @@ -282,7 +327,7 @@ <pre> subplot(111, xlabel='time', ylabel='volts', autoscale_on=False, xlim=(-1,1), ylim =(0,10) ) -</pre> +</pre> """), @@ -437,7 +482,7 @@ Heavy optimizations in line marker drawing eg <tt>plot(x,y,'+')</tt> or any other line marker. Here are some numbers, where N is the number of symbols - + <pre> 0.71 0.72 speedup ----------------------------------- @@ -449,7 +494,7 @@ N = 500000 | 48.81s | 2.32s | 21.03x </pre> """), - + ('log plot enhancements', """\ Lots of work making log plots <i>just work</i>. You can toggle log y axes with the <tt>l</tt> ("ell") keypress -- nonpositive data are simply @@ -484,8 +529,8 @@ ('Key press actions over axes', """\ Default key presses over axes: 'g' toggles grid, 'l' toggles logy"""), - + ('little features', """\ Calls to subplot with overlap other subplots now delete the overlapped subplot, load and save work with file and handles gzipped files @@ -511,16 +556,16 @@ >>> import matplotlib.pylab >>> matplotlib.pylab.__all__ </pre> -"""), +"""), ('contour zigzag bug fixed', """\ -Thanks Nadia for the blood, sweat and tears, and Dominique for the report."""), +Thanks Nadia for the blood, sweat and tears, and Dominique for the report."""), ('contour colormaps', """\ -Contour now uses the current colormap if colors is not provided, and works with colorbars. See <a href=examples/contour_demo2.py>contour_demo2.py</a>"""), +Contour now uses the current colormap if colors is not provided, and works with colorbars. See <a href=examples/contour_demo2.py>contour_demo2.py</a>"""), ('colorbar enhancements', """\ -Horizontal colorbars supported with keyword arg <tt>orientation='horizontal'</tt> and colorbars can be placed in an arbitrary axes with keyword arg <tt>cax</tt>. See <a href=matplotlib.pylab.html#-colorbar>colorbar</a>"""), +Horizontal colorbars supported with keyword arg <tt>orientation='horizontal'</tt> and colorbars can be placed in an arbitrary axes with keyword arg <tt>cax</tt>. See <a href=matplotlib.pylab.html#-colorbar>colorbar</a>"""), ('accents in mathtext', """\ Added accents to mathtext: <tt>\hat, \breve, \grave, \bar, \acute, \tilde, @@ -545,24 +590,24 @@ FigureManagerGTK. """), - - - + + + ) versioninfo['0.70'] = ( ('Users guide', """\ Though still not complete, there's enough to be useful -- <a href=users_guide.pdf>users_guide.pdf</a>. -"""), +"""), ('pie charts', """\ See <a href=screenshots.html#pie_demo>pie screenshot</a>. -"""), +"""), ('object picking', """\ @@ -572,10 +617,10 @@ part of the core, as will other keypress functionality for navigation, grid toogle, zoom toggle etc. """), - + ('wx/wxagg coords notification', """\ The wx toolbar now reports the x,y coords of the mouse -"""), +"""), ('key events', """\ Key press and release event supported across backends -- see @@ -584,7 +629,7 @@ ('shadow effect', """\ <a href=matplotlib.patches.html#Shadow>Shadow</a> patch class provides -a shadow effect for polygons, legends, pie charts - eg, +a shadow effect for polygons, legends, pie charts - eg, <a href=screenshots.html#legend_demo>legend screenshot</a>. """), @@ -637,7 +682,7 @@ href=examples/set_and_get.py>set_and_get.py</a>. Sample usage <pre> - >>> lines = plot([1,2,3]) + >>> lines = plot([1,2,3]) >>> set(lines) alpha: float antialiased or aa: [True | False] @@ -646,13 +691,13 @@ alpha = 1.0 antialiased or aa = True ...snip lots more... -</pre> +</pre> """), ('colormaps out the wazoo', """\ Added many new matlab compatible colormaps - autumn bone cool copper flag gray hot hsv jet pink prism spring summer winter - -Thanks Perry! +Thanks Perry! """), ('zordering', """\ @@ -694,7 +739,7 @@ <pre> title('hi mom', bbox={'facecolor':'r', 'alpha':0.5}) </pre> - + """), ('legend properties exposed as keyword arguments', """ @@ -748,7 +793,7 @@ href=examples/polar_scatter.py>polar_scatter.py</a> and <a href=screenshots.html#polar_demo>polar_demo<a/>."""), - + ('cairo backend', """\ Steve Chaplin has contributed a cairo and a gtkcairo backend - <a href=http://cairographics.org>cairographics</a>. Cairo is a vector @@ -882,7 +927,7 @@ appropriate interactive, threaded shell, as well as all of matplotlib.matlab and numerix. Requires ipython-0.6.3. Backend status summary: linux (all backends working), OSX (tkagg and gtk* -work), win32 (tkagg only). Thanks Fernando Perez! +work), win32 (tkagg only). Thanks Fernando Perez! """), ('Log ticking and formatting', """Excellent improvements in log @@ -987,27 +1032,27 @@ Thus you can type --not necessarily recommended for readability in scripts or apps but great for throwaway use in interactive shells -<pre> +<pre> # no antialiasing, thick green markeredge lines >>> plot(range(10), 'ro', aa=False, mew=2, mec='g') </pre> Analogs in matplotlib.patches -<pre> +<pre> aa : antialiased lw : linewidth ec : edgecolor fc : facecolor -</pre> +</pre> """), - + ('local rc files', """\ You can put a matplotlibrc file in a dir to override the one in your HOME dir. If you have a project, say a book, and you want to make a bunch of images with the same look and feel for the book, you can place a custom rc file in the code dir for that book and this won't -affect the configs you use for normal, interactive use."""), +affect the configs you use for normal, interactive use."""), ('Installing', """\ Updated installing instructions at <a @@ -1064,7 +1109,7 @@ equivalent to doing get_current_fig_manager().canvas.draw(), but takes less typing :-) """), - + ('Elaborate finance demo', """\ New finance demo shows off may of the features of matplotlib - see screenshot at <a href=screenshots.html#finance_work2>finance_work2</a>"""), @@ -1164,7 +1209,7 @@ # each plot command. Toggle with hold command grid.color : k # grid color grid.linestyle : : # dotted -grid.linewidth : 0.5 # in points +grid.linewidth : 0.5 # in points tick.major.pad : 4 # distance to major tick label in points tick.minor.pad : 4 # distance to the minor tick label in points @@ -1182,7 +1227,7 @@ to it now. """), - ('Properly aligned text with arbitrary alignments', + ('Properly aligned text with arbitrary alignments', """You can now expect horizontal and vertical alignment specifications to work with text at an arbitrary angle, eg, 45 degrees. See <a href=examples/alignment_test.py>alignment_test.py</a> """), @@ -1250,7 +1295,7 @@ href=matplotlib.dates.html>dates documentation</a> provides an overview and guide to with dates."""), - + ('Ported image support to numarray and postscript backend', """ The image module now works with Numeric or numarray, and now works in the postscript backend as well as GTKAgg, TkAgg, WXAgg, Agg, and GTK. @@ -1290,7 +1335,7 @@ """ ), ) -####################################################################################### +####################################################################################### versioninfo['0.52'] = ( ('Image support', """ @@ -1358,7 +1403,7 @@ ('GTKAgg', """GTK widgets with antigrain rendering. See the <a href=backends.html#GTKAgg>GTKAgg backend</a>.""" ), - + ('freetype2 support added for agg backend', """With freetype2, agg now renders fonts nicely even at very small raster sizes.""" ), @@ -1467,14 +1512,14 @@ 'x' linestyle. Thanks Matt! """ ), ('Exposed legend properties', """Added methods to access the legend primities: text, lines, and rectangles to allow fine-grained control over legend properties; see <a href=examples/legend_demo.py>legend_demo.py</a>""" ), - + ('gd module on win32', """\ With much weeping and gnashing of teeth and help from half the people on this globe, built a gdmodule win32 installer. Special thanks to Stefan Kuzminski for putting up with my endless windows confusions. See the win32 quickstart at <a href=backends.html#GDWIN32>installing</a> the GD backend.""" -), +), ('GD supports clipping and antialiased line drawing', """\ See instructions about upgrading gd and gdmodule at <a @@ -1530,8 +1575,8 @@ this should give better agreement with other backends with he relative sizes of objects</li> - <li> GTK : Dash spacing was not properly scaling with DPI</li> - <li> GTK : Rotated text did not display correctly in some cases</li> + <li> GTK : Dash spacing was not properly scaling with DPI</li> + <li> GTK : Rotated text did not display correctly in some cases</li> <li> GTK : Lots of optimizations using cacheing in GTK backend for improved performace for monitoring / animation scripts. Discovered @@ -1556,7 +1601,7 @@ ######################################################################## versioninfo['0.42'] = ( - ('EPS output from PS backend', + ('EPS output from PS backend', """Just add an eps extension"""), ('PS and EPS save from GTK and WX backends with bugs fixed', @@ -1566,9 +1611,9 @@ Text class enabled this. Text is now backend independent and behaves like the other artists in the figure (lines, patches, etc). Additionally, PS and EPS save from WX backend work -"""), +"""), - ('Object picker example', + ('Object picker example', """The file examples/object_picker.py is a template showing how to select objects in the figure with the mouse(eg, text, lines). If you click on the line, a properties dialog will pop up. You can edit the @@ -1583,7 +1628,7 @@ ######################################################################## versioninfo['0.41'] = ( -('Pcolor optimizations', +('Pcolor optimizations', """Several optimizations have improved the performance of pcolor across all backends, 4x on the GTK backend"""), @@ -1593,24 +1638,24 @@ Mostly works with a few know problems. You can simply call savefig('somefile.ps') or use the PS extension when saving from the GUI. -"""), +"""), ('Bug fixes', """ Fixed bugs in semilogy and in setting dashes under some versions of Numeric -"""), +"""), ('bar takes (optional)multiple color args', """ You can now pass bar a len(x) list of color args to have bars with different colors. -"""), +"""), ) ############################################################################## versioninfo['0.40'] = ( -('Wx python backend', +('Wx python backend', """ Jeremy O'Donoghue has done an amazing job implementing the backend for <a href=http://www.wxpython.org>wxpython</a>. See <a href=matplotlib.backends.backend_wx.html>backend_wx</a> for a status @@ -1625,7 +1670,7 @@ href=matplotlib.pylab.html#-cohere>cohere</a> plots the coherence. See the examples <a href=examples/psd_demo.py>psd_demo.py</a> and <a href=examples/csd_demo.py>csd_demo.py</a> -"""), +"""), ('Expanded legend capabilities', """ @@ -1676,7 +1721,7 @@ KNOWN BUGS section of the wx src to the <a href=http://sourceforge.net/mailarchive/forum.php?forum_id=36187>matplotlib-devel</a> mailing list. -"""), +"""), ('Pseudo color plots', """ The <a href=matplotlib.pylab.html#-pcolor>pcolor</a> command @@ -1692,7 +1737,7 @@ path setting for PS backend, fixed a label position bug """), ) -############################################################################### +############################################################################### versioninfo['0.29.2'] = ( ('Log scaling', @@ -1727,7 +1772,7 @@ ############################################################################## versioninfo['0.29'] = ( - ('Multiple output devices', + ('Multiple output devices', """The major improvement in matplotlib with this release is that the library no longer requires pygtk or GTK, and instead renders to an abstract drawing interface. This allows you to use matplotlib even in @@ -1802,10 +1847,10 @@ All drawing is done to a pixmap and then updated. This allows flicker free updates of the figure. You can use this, for example, to build a system monitor, which continuously shows system resources such as RAM, -CPU, etc... See <a href="examples/system_monitor.py">system_monitor.py</a> for a demo. +CPU, etc... See <a href="examples/system_monitor.py">system_monitor.py</a> for a demo. """), ) -############################################################################ +############################################################################ versioninfo['0.2'] = ( ('Font handling', @@ -1831,7 +1876,7 @@ interactively</a>. """), -('Saving figures', +('Saving figures', """ Ability to save figures in arbitrary resolution PNG or JPEG with a bug fix that caused saved figures to be corrupted by anything blocking the figure window. A GUI widget has been added to the figure toolbar This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 4503 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4503&view=rev Author: jdh2358 Date: 2007年11月29日 11:42:34 -0800 (2007年11月29日) Log Message: ----------- updated site docs Modified Paths: -------------- trunk/htdocs/API_CHANGES trunk/htdocs/CHANGELOG trunk/htdocs/backends.html.template trunk/htdocs/classdocs.html.template trunk/htdocs/convert.py trunk/htdocs/credits.html.template trunk/htdocs/examples/agg_resize.py trunk/htdocs/examples/agg_test.py trunk/htdocs/examples/anscombe.py trunk/htdocs/examples/axes_demo.py trunk/htdocs/examples/axes_props.py trunk/htdocs/examples/backend_driver.py trunk/htdocs/examples/color_by_yvalue.py trunk/htdocs/examples/colours.py trunk/htdocs/examples/contour_demo.py trunk/htdocs/examples/contourf_demo.py trunk/htdocs/examples/csd_demo.py trunk/htdocs/examples/cursor_demo.py trunk/htdocs/examples/data_helper.py trunk/htdocs/examples/date_demo1.py trunk/htdocs/examples/date_demo_convert.py trunk/htdocs/examples/dynamic_demo_wx.py trunk/htdocs/examples/dynamic_image_wxagg.py trunk/htdocs/examples/dynamic_image_wxagg2.py trunk/htdocs/examples/embedding_in_gtk.py trunk/htdocs/examples/embedding_in_gtk2.py trunk/htdocs/examples/embedding_in_gtk3.py trunk/htdocs/examples/embedding_in_qt.py trunk/htdocs/examples/embedding_in_tk.py trunk/htdocs/examples/embedding_in_tk2.py trunk/htdocs/examples/embedding_in_wx.py trunk/htdocs/examples/embedding_in_wx2.py trunk/htdocs/examples/embedding_in_wx3.py trunk/htdocs/examples/embedding_in_wx4.py trunk/htdocs/examples/errorbar_demo.py trunk/htdocs/examples/figimage_demo.py trunk/htdocs/examples/fill_between.py trunk/htdocs/examples/fill_demo2.py trunk/htdocs/examples/font_indexing.py trunk/htdocs/examples/font_table_ttf.py trunk/htdocs/examples/fonts_demo.py trunk/htdocs/examples/fonts_demo_kw.py trunk/htdocs/examples/ftface_props.py trunk/htdocs/examples/glyph_to_path.py trunk/htdocs/examples/gtk_spreadsheet.py trunk/htdocs/examples/histogram_demo.py trunk/htdocs/examples/histogram_demo_canvasagg.py trunk/htdocs/examples/image_demo.py trunk/htdocs/examples/image_demo2.py trunk/htdocs/examples/image_interp.py trunk/htdocs/examples/integral_demo.py trunk/htdocs/examples/interactive.py trunk/htdocs/examples/interactive2.py trunk/htdocs/examples/keypress_demo.py trunk/htdocs/examples/layer_images.py trunk/htdocs/examples/legend_auto.py trunk/htdocs/examples/legend_demo2.py trunk/htdocs/examples/line_styles.py trunk/htdocs/examples/major_minor_demo1.py trunk/htdocs/examples/major_minor_demo2.py trunk/htdocs/examples/masked_demo.py trunk/htdocs/examples/mathtext_demo.py trunk/htdocs/examples/mpl_with_glade.py trunk/htdocs/examples/mri_with_eeg.py trunk/htdocs/examples/multiline.py trunk/htdocs/examples/pcolor_demo.py trunk/htdocs/examples/pcolor_demo2.py trunk/htdocs/examples/pcolor_small.py trunk/htdocs/examples/pie_demo.py trunk/htdocs/examples/polar_demo.py trunk/htdocs/examples/polar_scatter.py trunk/htdocs/examples/poly_editor.py trunk/htdocs/examples/printing_in_wx.py trunk/htdocs/examples/psd_demo.py trunk/htdocs/examples/pythonic_matplotlib.py trunk/htdocs/examples/quiver_demo.py trunk/htdocs/examples/scatter_demo.py trunk/htdocs/examples/scatter_profile.py trunk/htdocs/examples/set_and_get.py trunk/htdocs/examples/specgram_demo.py trunk/htdocs/examples/stem_plot.py trunk/htdocs/examples/system_monitor.py trunk/htdocs/examples/tex_demo.py trunk/htdocs/examples/to_numeric.py trunk/htdocs/examples/toggle_images.py trunk/htdocs/examples/unicode_demo.py trunk/htdocs/examples/units/bar_unit_demo.py trunk/htdocs/examples/units/basic_units.py trunk/htdocs/examples/units/date_support.py trunk/htdocs/examples/units/units_sample.py trunk/htdocs/examples/vline_demo.py trunk/htdocs/examples/webapp_demo.py trunk/htdocs/examples/widgets/buttons.py trunk/htdocs/examples/widgets/check_buttons.py trunk/htdocs/examples/widgets/radio_buttons.py trunk/htdocs/examples/widgets/sliders.py trunk/htdocs/examples/widgets/span_selector.py trunk/htdocs/examples/wxcursor_demo.py trunk/htdocs/faq.html.template trunk/htdocs/fonts.html.template trunk/htdocs/hthelpers.py trunk/htdocs/index.html.template trunk/htdocs/installing.html.template trunk/htdocs/interactive.html.template trunk/htdocs/license.html.template trunk/htdocs/make.py trunk/htdocs/matplotlib.afm.html.template trunk/htdocs/matplotlib.artist.html.template trunk/htdocs/matplotlib.axes.html.template trunk/htdocs/matplotlib.axis.html.template trunk/htdocs/matplotlib.backend_bases.html.template trunk/htdocs/matplotlib.backends.backend_agg.html.template trunk/htdocs/matplotlib.backends.backend_cairo.html.template trunk/htdocs/matplotlib.backends.backend_gd.html.template trunk/htdocs/matplotlib.backends.backend_gtk.html.template trunk/htdocs/matplotlib.backends.backend_gtkagg.html.template trunk/htdocs/matplotlib.backends.backend_gtkcairo.html.template trunk/htdocs/matplotlib.backends.backend_ps.html.template trunk/htdocs/matplotlib.backends.backend_qt.html.template trunk/htdocs/matplotlib.backends.backend_qtagg.html.template trunk/htdocs/matplotlib.backends.backend_svg.html.template trunk/htdocs/matplotlib.backends.backend_template.html.template trunk/htdocs/matplotlib.backends.backend_tkagg.html.template trunk/htdocs/matplotlib.backends.backend_wx.html.template trunk/htdocs/matplotlib.backends.backend_wxagg.html.template trunk/htdocs/matplotlib.cbook.html.template trunk/htdocs/matplotlib.cm.html.template trunk/htdocs/matplotlib.collections.html.template trunk/htdocs/matplotlib.colors.html.template trunk/htdocs/matplotlib.dates.html.template trunk/htdocs/matplotlib.figure.html.template trunk/htdocs/matplotlib.finance.html.template trunk/htdocs/matplotlib.font_manager.html.template trunk/htdocs/matplotlib.ft2font.html.template trunk/htdocs/matplotlib.image.html.template trunk/htdocs/matplotlib.legend.html.template trunk/htdocs/matplotlib.lines.html.template trunk/htdocs/matplotlib.mathtext.html trunk/htdocs/matplotlib.mathtext.html.template trunk/htdocs/matplotlib.mlab.html.template trunk/htdocs/matplotlib.numerix.html.template trunk/htdocs/matplotlib.patches.html.template trunk/htdocs/matplotlib.pylab.html.template trunk/htdocs/matplotlib.table.html.template trunk/htdocs/matplotlib.texmanager.html.template trunk/htdocs/matplotlib.text.html.template trunk/htdocs/matplotlib.ticker.html.template trunk/htdocs/matplotlib.transforms.html.template trunk/htdocs/matplotlib.widgets.html.template trunk/htdocs/matplotlibrc trunk/htdocs/pylab_commands.html.template trunk/htdocs/screenshots/align_text_large.png trunk/htdocs/screenshots/align_text_small.png trunk/htdocs/screenshots/axes_demo_large.png trunk/htdocs/screenshots/axes_demo_small.png trunk/htdocs/screenshots/barchart_demo_large.png trunk/htdocs/screenshots/barchart_demo_small.png trunk/htdocs/screenshots/date_demo_large.png trunk/htdocs/screenshots/date_demo_small.png trunk/htdocs/screenshots/fill_demo_large.png trunk/htdocs/screenshots/fill_demo_small.png trunk/htdocs/screenshots/finance_work2_large.png trunk/htdocs/screenshots/finance_work2_small.png trunk/htdocs/screenshots/histogram_demo_large.png trunk/htdocs/screenshots/histogram_demo_small.png trunk/htdocs/screenshots/layer_images_large.png trunk/htdocs/screenshots/layer_images_small.png trunk/htdocs/screenshots/legend_demo_large.png trunk/htdocs/screenshots/legend_demo_small.png trunk/htdocs/screenshots/log_shot_large.png trunk/htdocs/screenshots/log_shot_small.png trunk/htdocs/screenshots/mathtext_demo_large.png trunk/htdocs/screenshots/mathtext_demo_small.png trunk/htdocs/screenshots/mri_with_eeg.py trunk/htdocs/screenshots/mri_with_eeg_large.png trunk/htdocs/screenshots/mri_with_eeg_small.png trunk/htdocs/screenshots/pcolor_demo_large.png trunk/htdocs/screenshots/pcolor_demo_small.png trunk/htdocs/screenshots/pfm-lsm.png trunk/htdocs/screenshots/pie_demo_large.png trunk/htdocs/screenshots/pie_demo_small.png trunk/htdocs/screenshots/polar_demo_large.png trunk/htdocs/screenshots/polar_demo_small.png trunk/htdocs/screenshots/scatter_demo2_large.png trunk/htdocs/screenshots/scatter_demo2_small.png trunk/htdocs/screenshots/simple_plot_large.png trunk/htdocs/screenshots/simple_plot_small.png trunk/htdocs/screenshots/slider_demo_large.png trunk/htdocs/screenshots/slider_demo_small.png trunk/htdocs/screenshots/table_demo_large.png trunk/htdocs/screenshots/table_demo_small.png trunk/htdocs/screenshots/tex_demo_large.png trunk/htdocs/screenshots/tex_demo_small.png trunk/htdocs/screenshots/text_themes_large.png trunk/htdocs/screenshots/text_themes_small.png trunk/htdocs/screenshots/wheeler_demo_large.png trunk/htdocs/screenshots/wheeler_demo_small.png trunk/htdocs/screenshots.html.template trunk/htdocs/tut/custom_axes.png trunk/htdocs/tut/date_demo2.png trunk/htdocs/tut/firstfig.png trunk/htdocs/tut/mathtext_tut.png trunk/htdocs/tut/secondfig.png trunk/htdocs/tut/subplot.png trunk/htdocs/tut/text_dict.png trunk/htdocs/tut/text_simple.png trunk/htdocs/tut/thirdfig.png trunk/htdocs/tutorial.html.template trunk/htdocs/whats_new.html.template Added Paths: ----------- trunk/htdocs/matplotlib.colorbar.html.template trunk/htdocs/matplotlib.contour.html.template trunk/htdocs/matplotlib.dviread.html.template trunk/htdocs/matplotlib.fontconfig_pattern.html.template trunk/htdocs/matplotlib.pyplot.html.template trunk/htdocs/matplotlib.quiver.html.template trunk/htdocs/matplotlib.rcsetup.html.template trunk/htdocs/matplotlib.type1font.html.template trunk/htdocs/matplotlib.units.html.template Modified: trunk/htdocs/API_CHANGES =================================================================== --- trunk/htdocs/API_CHANGES 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/API_CHANGES 2007年11月29日 19:42:34 UTC (rev 4503) @@ -1,3 +1,68 @@ +0.91.0 Released + + Changed cbook.is_file_like to cbook.is_writable_file_like and + corrected behavior. + + Added ax kwarg to pyplot.colorbar and Figure.colorbar so that + one can specify the axes object from which space for the colorbar + is to be taken, if one does not want to make the colorbar axes + manually. + + Changed cbook.reversed so it yields a tuple rather than a + (index, tuple). This agrees with the python reversed builtin, + and cbook only defines reversed if python doesnt provide the + builtin. + + Made skiprows=1 the default on csv2rec + + The gd and paint backends have been deleted. + + The errorbar method and function now accept additional kwargs + so that upper and lower limits can be indicated by capping the + bar with a caret instead of a straight line segment. + + The dviread.py file now has a parser for files like psfonts.map + and pdftex.map, to map TeX font names to external files. + + The file type1font.py contains a new class for Type 1 fonts. + Currently it simply reads pfa and pfb format files and stores the + data in a way that is suitable for embedding in pdf files. In the + future the class might actually parse the font to allow e.g. + subsetting. + + FT2Font now supports FT_Attach_File. In practice this can be used + to read an afm file in addition to a pfa/pfb file, to get metrics + and kerning information for a Type 1 font. + + The AFM class now supports querying CapHeight and stem widths. The + get_name_char method now has an isord kwarg like get_width_char. + + Changed pcolor default to shading='flat'; but as noted now in the + docstring, it is preferable to simply use the edgecolor kwarg. + + The mathtext font commands (\cal, \rm, \it, \tt) now behave as TeX + does: they are in effect until the next font change command or the + end of the grouping. Therefore uses of $\cal{R}$ should be + changed to ${\cal R}$. Alternatively, you may use the new + LaTeX-style font commands (\mathcal, \mathrm, \mathit, \mathtt) + which do affect the following group, eg. $\mathcal{R}$. + + Text creation commands have a new default linespacing and + a new linespacing kwarg, which is a multiple of the maximum + vertical extent of a line of ordinary text. The default is + 1.2; linespacing=2 would be like ordinary double spacing, for + example. + + Changed default kwarg in colors.Normalize.__init__ to clip=False; + clipping silently defeats the purpose of the special over, under, + and bad values in the colormap, thereby leading to unexpected + behavior. The new default should reduce such surprises. + + Made the emit property of set_xlim and set_ylim true by default; + removed the Axes custom callback handling into a 'callbacks' + attribute which is a cbook.CallbackRegistry instance. This now + supports the xlim_changed and ylim_changed Axes events. + 0.90.1 released The file dviread.py has a (very limited and fragile) dvi reader Modified: trunk/htdocs/CHANGELOG =================================================================== --- trunk/htdocs/CHANGELOG 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/CHANGELOG 2007年11月29日 19:42:34 UTC (rev 4503) @@ -1,3 +1,390 @@ +=============================================================== +2007年11月27日 Released 0.91.0 at revision 4478 + +2007年11月13日 All backends now support writing to a file-like object, not + just a regular file. savefig() can be passed a file-like + object in place of a file path. - MGD + +2007年11月13日 Improved the default backend selection at build time: + SVG -> Agg -> TkAgg -> WXAgg -> GTK -> GTKAgg. The last usable + backend in this progression will be chosen in the default + config file. If a backend is defined in setup.cfg, that will + be the default backend - DSD + +2007年11月13日 Improved creation of default config files at build time for + traited config package - DSD + +2007年11月12日 Exposed all the build options in setup.cfg. These options are + read into a dict called "options" by setupext.py. Also, added + "-mpl" tags to the version strings for packages provided by + matplotlib. Versions provided by mpl will be identified and + updated on subsequent installs - DSD + +2007年11月12日 Added support for STIX fonts. A new rcParam, + mathtext.fontset, can be used to choose between: + + 'cm': + The TeX/LaTeX Computer Modern fonts + + 'stix': + The STIX fonts (see stixfonts.org) + + 'stixsans': + The STIX fonts, using sans-serif glyphs by default + + 'custom': + A generic Unicode font, in which case the mathtext font + must be specified using mathtext.bf, mathtext.it, + mathtext.sf etc. + + Added a new example, stix_fonts_demo.py to show how to access + different fonts and unusual symbols. + + - MGD + +2007年11月12日 Options to disable building backend extension modules moved + from setup.py to setup.cfg - DSD + +2007年11月09日 Applied Martin Teichmann's patch 1828813: a QPainter is used in + paintEvent, which has to be destroyed using the method end(). If + matplotlib raises an exception before the call to end - and it + does if you feed it with bad data - this method end() is never + called and Qt4 will start spitting error messages + +2007年11月09日 Moved pyparsing back into matplotlib namespace. Don't use + system pyparsing, API is too variable from one release + to the next - DSD + +2007年11月08日 Made pylab use straight numpy instead of oldnumeric + by default - EF + +2007年11月08日 Added additional record array utilites to mlab (rec2excel, + rec2gtk, rec_join, rec_append_field, rec_drop_field) - JDH + +2007年11月08日 Updated pytz to version 2007g - DSD + +2007年11月08日 Updated pyparsing to version 1.4.8 - DSD + +2007年11月08日 Moved csv2rec to recutils and added other record array + utilities - JDH + +2007年11月08日 If available, use existing pyparsing installation - DSD + +2007年11月07日 Removed old enthought.traits from lib/matplotlib, added + Gael Varoquaux's enthought.traits-2.6b1, which is stripped + of setuptools. The package is installed to site-packages + if not already available - DSD + +2007年11月05日 Added easy access to minor tick properties; slight mod + of patch by Pierre G-M - EF + +2007年11月02日 Commited Phil Thompson's patch 1599876, fixes to Qt4Agg + backend and qt4 blitting demo - DSD + +2007年11月02日 Commited Phil Thompson's patch 1599876, fixes to Qt4Agg + backend and qt4 blitting demo - DSD + +2007年10月31日 Made log color scale easier to use with contourf; + automatic level generation now works. - EF + +2007年10月24日 Added ax kwarg to Figure.colorbar and pyplot.colorbar - EF + +2007年10月19日 Removed a gsave/grestore pair surrounding _draw_ps, which + was causing a loss graphics state info (see "EPS output + problem - scatter & edgecolors" on mpl-dev, 2007年10月29日) + - DSD + +2007年10月15日 Fixed a bug in patches.Ellipse that was broken for + aspect='auto'. Scale free ellipses now work properly for + equal and auto on Agg and PS, and they fall back on a + polygonal approximation for nonlinear transformations until + we convince oursleves that the spline approximation holds + for nonlinear transformations. Added + unit/ellipse_compare.py to compare spline with vertex + approx for both aspects. JDH + +2007年10月05日 remove generator expressions from texmanager and mpltraits. + generator expressions are not supported by python-2.3 - DSD + +2007年10月01日 Made matplotlib.use() raise an exception if called after + backends has been imported. - EF + +2007年09月30日 Modified update* methods of Bbox and Interval so they + work with reversed axes. Prior to this, trying to + set the ticks on a reversed axis failed with an + uninformative error message. - EF + +2007年09月30日 Applied patches to axes3d to fix index error problem - EF + +2007年09月24日 Applied Eike Welk's patch reported on mpl-dev on 2007年09月22日 + Fixes a bug with multiple plot windows in the qt backend, + ported the changes to backend_qt4 as well - DSD + +2007年09月21日 Changed cbook.reversed to yield the same result as the + python reversed builtin - DSD + +2007年09月13日 The usetex support in the pdf backend is more usable now, + so I am enabling it. - JKS + +2007年09月12日 Fixed a Axes.bar unit bug - JDH + +2007年09月10日 Made skiprows=1 the default on csv2rec - JDH + +2007年09月09日 Split out the plotting part of pylab and put it in + pyplot.py; removed numerix from the remaining pylab.py, + which imports everything from pyplot.py. The intention + is that apart from cleanups, the result of importing + from pylab is nearly unchanged, but there is the + new alternative of importing from pyplot to get + the state-engine graphics without all the numeric + functions. + Numpified examples; deleted two that were obsolete; + modified some to use pyplot. - EF + +2007年09月08日 Eliminated gd and paint backends - EF + +2007年09月06日 .bmp file format is now longer an alias for .raw + +2007年09月07日 Added clip path support to pdf backend. - JKS + +2007年09月06日 Fixed a bug in the embedding of Type 1 fonts in PDF. + Now it doesn't crash Preview.app. - JKS + +2007年09月06日 Refactored image saving code so that all GUI backends can + save most image types. See FILETYPES for a matrix of + backends and their supported file types. + Backend canvases should no longer write their own print_figure() + method -- instead they should write a print_xxx method for + each filetype they can output and add an entry to their + class-scoped filetypes dictionary. - MGD + +2007年09月05日 Fixed Qt version reporting in setupext.py - DSD + +2007年09月04日 Embedding Type 1 fonts in PDF, and thus usetex support + via dviread, sort of works. To test, enable it by + renaming _draw_tex to draw_tex. - JKS + +2007年09月03日 Added ability of errorbar show limits via caret or + arrowhead ends on the bars; patch by Manual Metz. - EF + +2007年09月03日 Created type1font.py, added features to AFM and FT2Font + (see API_CHANGES), started work on embedding Type 1 fonts + in pdf files. - JKS + +2007年09月02日 Continued work on dviread.py. - JKS + +2007年08月16日 Added a set_extent method to AxesImage, allow data extent + to be modified after initial call to imshow - DSD + +2007年08月14日 Fixed a bug in pyqt4 subplots-adjust. Thanks to + Xavier Gnata for the report and suggested fix - DSD + +2007年08月13日 Use pickle to cache entire fontManager; change to using + font_manager module-level function findfont wrapper for + the fontManager.findfont method - EF + +2007年08月11日 Numpification and cleanup of mlab.py and some examples - EF + +2007年08月06日 Removed mathtext2 + +2007年07月31日 Refactoring of distutils scripts. + - Will not fail on the entire build if an optional Python + package (e.g. Tkinter) is installed but its development + headers are not (e.g. tk-devel). Instead, it will + continue to build all other extensions. + - Provide an overview at the top of the output to display + what dependencies and their versions were found, and (by + extension) what will be built. + - Use pkg-config, when available, to find freetype2, since + this was broken on Mac OS-X when using MacPorts in a non- + standard location. + +2007年07月30日 Reorganized configuration code to work with traited config + objects. The new config system is located in the + matplotlib.config package, but it is disabled by default. + To enable it, set NEWCONFIG=True in matplotlib.__init__.py. + The new configuration system will still use the old + matplotlibrc files by default. To switch to the experimental, + traited configuration, set USE_TRAITED_CONFIG=True in + config.__init__.py. + +2007年07月29日 Changed default pcolor shading to flat; added aliases + to make collection kwargs agree with setter names, so + updating works; related minor cleanups. + Removed quiver_classic, scatter_classic, pcolor_classic. - EF + +2007年07月26日 Major rewrite of mathtext.py, using the TeX box layout model. + + There is one (known) backward incompatible change. The + font commands (\cal, \rm, \it, \tt) now behave as TeX does: + they are in effect until the next font change command or + the end of the grouping. Therefore uses of $\cal{R}$ + should be changed to ${\cal R}$. Alternatively, you may + use the new LaTeX-style font commands (\mathcal, \mathrm, + \mathit, \mathtt) which do affect the following group, + eg. $\mathcal{R}$. + + Other new features include: + + - Math may be interspersed with non-math text. Any text + with an even number of $'s (non-escaped) will be sent to + the mathtext parser for layout. + + - Sub/superscripts are less likely to accidentally overlap. + + - Support for sub/superscripts in either order, eg. $x^i_j$ + and $x_j^i$ are equivalent. + + - Double sub/superscripts (eg. $x_i_j$) are considered + ambiguous and raise an exception. Use braces to disambiguate. + + - $\frac{x}{y}$ can be used for displaying fractions. + + - $\sqrt[3]{x}$ can be used to display the radical symbol + with a root number and body. + + - $\left(\frac{x}{y}\right)$ may be used to create + parentheses and other delimiters that automatically + resize to the height of their contents. + + - Spacing around operators etc. is now generally more like + TeX. + + - Added support (and fonts) for boldface (\bf) and + sans-serif (\sf) symbols. + + - Log-like function name shortcuts are supported. For + example, $\sin(x)$ may be used instead of ${\rm sin}(x)$ + + - Limited use of kerning for the easy case (same font) + + Behind the scenes, the pyparsing.py module used for doing + the math parsing was updated to the latest stable version + (1.4.6). A lot of duplicate code was refactored out of the + Font classes. + + - MGD + +2007年07月19日 completed numpification of most trivial cases - NN + +2007年07月19日 converted non-numpy relicts throughout the code - NN + +2007年07月19日 replaced the Python code in numerix/ by a minimal wrapper around + numpy that explicitly mentions all symbols that need to be + addressed for further numpification - NN + +2007年07月18日 make usetex respect changes to rcParams. texmanager used to + only configure itself when it was created, now it + reconfigures when rcParams are changed. Thank you Alexander + Schmolck for contributing a patch - DSD + +2007年07月17日 added validation to setting and changing rcParams - DSD + +2007年07月17日 bugfix segfault in transforms module. Thanks Ben North for + the patch. - ADS + +2007年07月16日 clean up some code in ticker.ScalarFormatter, use unicode to + render multiplication sign in offset ticklabel - DSD + +2007年07月16日 fixed a formatting bug in ticker.ScalarFormatter's scientific + notation (10^0 was being rendered as 10 in some cases) - DSD + +2007年07月13日 Add MPL_isfinite64() and MPL_isinf64() for testing + doubles in (the now misnamed) MPL_isnan.h. - ADS + +2007年07月13日 The matplotlib._isnan module removed (use numpy.isnan) - ADS + +2007年07月13日 Some minor cleanups in _transforms.cpp - ADS + +2007年07月13日 Removed the rest of the numerix extension code detritus, + numpified axes.py, and cleaned up the imports in axes.py + - JDH + +2007年07月13日 Added legend.loc as configurable option that could in + future default to 'best'. - NN + +2007年07月12日 Bugfixes in mlab.py to coerce inputs into numpy arrays. -ADS + +2007年07月11日 Added linespacing kwarg to text.Text - EF + +2007年07月11日 Added code to store font paths in SVG files. - MGD + +2007年07月10日 Store subset of TTF font as a Type 3 font in PDF files. - MGD + +2007年07月09日 Store subset of TTF font as a Type 3 font in PS files. - MGD + +2007年07月09日 Applied Paul's pick restructure pick and add pickers, + sourceforge patch 1749829 - JDH + + +2007年07月09日 Applied Allan's draw_lines agg optimization. JDH + + +2007年07月08日 Applied Carl Worth's patch to fix cairo draw_arc - SC + +2007年07月07日 fixed bug 1712099: xpdf distiller on windows - DSD + +2007年06月30日 Applied patches to tkagg, gtk, and wx backends to reduce + memory leakage. Patches supplied by Mike Droettboom; + see tracker numbers 1745400, 1745406, 1745408. + Also made unit/memleak_gui.py more flexible with + command-line options. - EF + +2007年06月30日 Split defaultParams into separate file rcdefaults (together with + validation code). Some heavy refactoring was necessary to do so, + but the overall behavior should be the same as before. - NN + +2007年06月27日 Added MPLCONFIGDIR for the default location for mpl data + and configuration. useful for some apache installs where + HOME is not writable. Tried to clean up the logic in + _get_config_dir to support non-writable HOME where are + writable HOME/.matplotlib already exists - JDH + +2007年06月27日 Fixed locale bug reported at + http://sourceforge.net/tracker/index.php?func=detail&aid=1744154&group_id=80706&atid=560720 + by adding a cbook.unicode_safe function - JDH + +2007年06月27日 Applied Micheal's tk savefig bugfix described at + http://sourceforge.net/tracker/index.php?func=detail&aid=1716732&group_id=80706&atid=560720 + Thanks Michael! + + +2007年06月27日 Patch for get_py2exe_datafiles() to work with new directory + layout. (Thanks Tocer and also Werner Bruhin.) -ADS + + +2007年06月27日 Added a scroll event to the mpl event handling system and + implemented it for backends GTK* -- other backend + users/developers/maintainers, please add support for your + backend. - JDH + +2007年06月25日 Changed default to clip=False in colors.Normalize; + modified ColorbarBase for easier colormap display - EF + +2007年06月13日 Added maskedarray option to rc, numerix - EF + +2007年06月11日 Python 2.5 compatibility fix for mlab.py - EF + +2007年06月10日 In matplotlibrc file, use 'dashed' | 'solid' instead + of a pair of floats for contour.negative_linestyle - EF + +2007年06月08日 Allow plot and fill fmt string to be any mpl string + colorspec - EF + +2007年06月08日 Added gnuplot file plotfile function to pylab -- see + examples/plotfile_demo.py - JDH + +2007年06月07日 Disable build of numarray and Numeric extensions for + internal MPL use and the numerix layer. - ADS + +2007年06月07日 Added csv2rec to matplotlib.mlab to support automatically + converting csv files to record arrays using type + introspection, and turned on native datetime support using + the new units support in matplotlib.dates. See + examples/loadrec.py ! JDH + +2007年06月07日 Simplified internal code of _auto_legend_data - NN + 2007年06月04日 Added labeldistance arg to Axes.pie to control the raidal distance of the wedge labels - JDH @@ -380,35 +767,35 @@ 2006年10月10日 deactivated rcfile-configurability of markerfacecolor and markeredgecolor. Both are now hardcoded to the special value - 'auto' to follow the line color. Configurability at run-time - (using function arguments) remains functional. - NN + 'auto' to follow the line color. Configurability at run-time + (using function arguments) remains functional. - NN 2006年10月07日 introduced dummy argument magnification=1.0 to FigImage.make_image to satisfy unit test figimage_demo.py The argument is not yet handled correctly, which should only - show up when using non-standard DPI settings in PS backend, - introduced by patch #1562394. - NN + show up when using non-standard DPI settings in PS backend, + introduced by patch #1562394. - NN 2006年10月06日 add backend-agnostic example: simple3d.py - NN 2006年09月29日 fix line-breaking for SVG-inline images (purely cosmetic) - NN 2006年09月29日 reworked set_linestyle and set_marker - markeredgecolor and markerfacecolor now default to - a special value "auto" that keeps the color in sync with - the line color - further, the intelligence of axes.plot is cleaned up, - improved and simplified. Complete compatibility cannot be - guaranteed, but the new behavior should be much more predictable - (see patch #1104615 for details) - NN + markeredgecolor and markerfacecolor now default to + a special value "auto" that keeps the color in sync with + the line color + further, the intelligence of axes.plot is cleaned up, + improved and simplified. Complete compatibility cannot be + guaranteed, but the new behavior should be much more predictable + (see patch #1104615 for details) - NN 2006年09月29日 changed implementation of clip-path in SVG to work around a limitation in inkscape - NN 2006年09月29日 added two options to matplotlibrc: - svg.image_inline - svg.image_noscale - see patch #1533010 for details - NN + svg.image_inline + svg.image_noscale + see patch #1533010 for details - NN 2006年09月29日 axes.py: cleaned up kwargs checking - NN @@ -439,8 +826,8 @@ 2006年09月05日 Released 0.87.5 at revision 2761 2006年09月04日 Added nxutils for some numeric add-on extension code -- - specifically a better/more efficient inside polygon tester (see - unit/inside_poly_*.py) - JDH + specifically a better/more efficient inside polygon tester (see + unit/inside_poly_*.py) - JDH 2006年09月04日 Made bitstream fonts the rc default - JDH @@ -785,7 +1172,7 @@ 2006年03月20日 Added contour.negative_linestyle rcParam - ADS 2006年03月20日 Added _isnan extension module to test for nan with Numeric - - ADS + - ADS 2006年03月17日 Added Paul and Alex's support for faceting with quadmesh in sf patch 1411223 - JDH @@ -1132,7 +1519,7 @@ 2005年11月09日 added axisbelow attr for Axes to determine whether ticks and such - are above or below the actors + are above or below the actors 2005年11月08日 Added Nicolas' irregularly spaced image patch @@ -1289,7 +1676,7 @@ 2005年07月24日 backend_gtk.py: modify print_figure() use own pixmap, fixing problems where print_figure() overwrites the display pixmap. - return False from all button/key etc events - to allow the event + return False from all button/key etc events - to allow the event to propagate further - SC 2005年07月23日 backend_gtk.py: change expose_event from using set_back_pixmap(); @@ -1311,7 +1698,7 @@ 2005年07月14日 Fixed a Windows related bug (#1238412) in texmanager - DSD 2005年07月11日 Fixed color kwarg bug, setting color=1 or 0 caused an - exception - DSD + exception - DSD 2005年07月07日 Added Eric's MA set_xdata Line2D fix - JDH @@ -1413,10 +1800,10 @@ 2005年06月13日 Exposed cap and join style for lines with new rc params and line properties - lines.dash_joinstyle : miter # miter|round|bevel - lines.dash_capstyle : butt # butt|round|projecting - lines.solid_joinstyle : miter # miter|round|bevel - lines.solid_capstyle : projecting # butt|round|projecting + lines.dash_joinstyle : miter # miter|round|bevel + lines.dash_capstyle : butt # butt|round|projecting + lines.solid_joinstyle : miter # miter|round|bevel + lines.solid_capstyle : projecting # butt|round|projecting 2005年06月13日 Added kwargs to Axes init @@ -1530,9 +1917,9 @@ for the interp kwarg are 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', - 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', - 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', - 'lanczos', 'blackman' + 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', + 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', + 'lanczos', 'blackman' See help(imshow) for details, particularly the interpolation, filternorm and filterrad kwargs Modified: trunk/htdocs/backends.html.template =================================================================== --- trunk/htdocs/backends.html.template 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/backends.html.template 2007年11月29日 19:42:34 UTC (rev 4503) @@ -4,8 +4,8 @@ The matplotlib core graphics routines interact with an abstract renderer and graphics context to allow device independent ouput. -Currently, output to pygtk, wxPython, Tkinter, postscript, gdmodule, -libart/paint, svg, agg (antigrain geometry) and Cairo are supported. With +Currently, output to pygtk, wxPython, Tkinter, postscript, +pdf, svg, agg (antigrain geometry) and Cairo are supported. With not too much effort, you can port matplotlib to your favorite display; high on my list of priorities are PDF and PIL. If you are interested in porting to one of these platforms, please contact me!<p> @@ -35,24 +35,22 @@ > python subplot_demo.py -dAgg # antigrain geometry backend image > python subplot_demo.py -dCairo # Cairo backend > python subplot_demo.py -dPS # postscript backend +> python subplot_demo.py -dPDF # pdf backend > python subplot_demo.py -dSVG # SVG backend -> python subplot_demo.py -dGD # GD backend -> python subplot_demo.py -dPaint # Paint backend -> python subplot_demo.py -dEMF # EMF backend </pre> For backends that do not have a GUI, no output will be produced unless -a call to <a href=matplotlib.pylab.html#-savefig>savefig</a> is made. +a call to <a href=matplotlib.pyplot.html#-savefig>savefig</a> is made. The recommended way to use the savefig function is to not give an extension. The backends will choose the proper extension. This allows you to write a single script and select the output format from the command line. So a script containing <tt>savefig('somefile')</tt> will create <tt>somefile.ps</tt> if called with <tt>-dPS</tt> and -<tt>somefile.png</tt> if called with <tt>-dGD</tt>, and so on.<p> +<tt>somefile.png</tt> if called with <tt>-dAgg</tt>, and so on.<p> Alternatively, you can select the backend renderer in your script by -calling the matplotlib <a href=matplotlib.pylab.html#-use>use</a> +calling the matplotlib <a href=matplotlib.pyplot.html#-use>use</a> function. At the top of your script (before you <tt>import matplotlib.pylab</tt>, just do, for example @@ -69,12 +67,11 @@ href=matplotlib.backends.backend_gtkagg.html>GTKAgg</a>, <a href=matplotlib.backends.backend_gtkcairo.html>GTKCairo</a>, <a href=matplotlib.backends.backend_ps.html>PS</a>, <a +href=matplotlib.backends.backend_pdf.html>PDF</a>, <a +href=matplotlib.backends.backend_svg.html>SVG</a>, <a href=matplotlib.backends.backend_tkagg.html>TkAgg</a>, <a href=matplotlib.backends.backend_wx.html>WX</a>, <a href=matplotlib.backends.backend_wxagg.html>WXAgg</a>, <a -href=matplotlib.backends.backend_paint.html>Paint</a>, <a -href=matplotlib.backends.backend_gd.html>GD</a>, <a -href=matplotlib.backends.backend_emf.html>EMF</a> and <a href=matplotlib.backends.backend_template.html>Template</a>. The default is GTKAgg. Template is a do nothing backend that serves as a @@ -87,12 +84,9 @@ <h2>Backend requirements</h2> Each of the backends have a different set of requirements, listed -below. All require the <a -href=http://sourceforge.net/projects/numpy>Numeric or numarray</a> -modules. Note, matplotlib can also be made to work with numarray with -minor changes; see the <a href=faq.html#NUMARRAY>FAQ</a>.<p> +below. All require <a href=http://numpy.scipy.org/>numpy</a> +modules. - Specific information for installing the other backends can be found on this page below or by clicking <ul> @@ -105,9 +99,6 @@ <li><a href=backends.html#WX>WX</a></li> <li><a href=backends.html#WXAgg>WXAgg</a></li> <li><a href=backends.html#PS>PS</a></li> -<li><a href=backends.html#Paint>Paint</a></li> -<li><a href=backends.html#GD>GD</a></li> -<li><a href=backends.html#EMF>EMF</a></li> </ul> @@ -144,7 +135,7 @@ <ul> - <li><a href=http://www.pfdubois.com/numpy>Numeric/numarray</a></li> + <li><a href=http://numpy.scipy.org/>numpy</a></li> <li><a href=http://prdownloads.sourceforge.net/gtk-win> GTK runtime</a></li> @@ -175,9 +166,7 @@ href=http://matplotlib.sourceforge.net/faq.html#GTKPATH>the FAQ</a><ul> -<li>Install <a -href=http://sourceforge.net/project/showfiles.php?group_id=1369&release_id=176455> -Numeric/numarray</a>. If you are using the enthought edition of +<li>Install <a href=http://numpy.scipy.org/>numpy</a>. If you are using the enthought edition of python, you can skip this step.</li> <li>Install the <a href=http://prdownloads.sourceforge.net/gtk-win> @@ -203,7 +192,7 @@ Requires <a href=http://www.wxpython.org>wxpython</a>. Windows users may want to consider the <a href=http://www.enthought.com/python>enthought edition</a> of python, -which comes with wxpython and Numeric built in, so matplotlib will +which comes with wxpython and numpy built in, so matplotlib will work right out of the box. matplotlib under WX has been tested on linux, win32 and OSX.<p> @@ -212,7 +201,7 @@ Requires <a href=http://www.wxpython.org>wxpython</a>. Windows users may want to consider the <a href=http://www.enthought.com/python>enthought edition</a> of python, -which comes with wxpython and Numeric built in, so matplotlib will +which comes with wxpython and numpy built in, so matplotlib will work right out of the box. matplotlib under WXAgg has been tested on linux, win32 and OSX.<p> @@ -278,54 +267,10 @@ the same problem with Tkinter may be affecting both (SciTE and Pythonwin)... but I am out on a limb.<p> -<h3><a name=GD>GD output</a></h3> -The recommended image backend is Agg. If you are sure you want to use -GD, read on.<p> - -The GD module can be used to create images with no X11 server, and is -particularly useful for web application developers who want dynamic -graphing capabilities. There are a number of prerequisites but they -are easy to install (Windows users should skip ahead to the win32 -section).<p> - -The GD backend depends on Numeric/numarray, gdmodule, and gd. To ease -installation, the latter two packages now ship with matplotlib. Below -are instructions for building gdmodule. - - <ul> - - <li><a href=http://www.pfdubois.com/numpy>Numeric/numarray</a> -- - Numeric processing in python</li> - - <li><a href=http://www.boutell.com/gd>GD lib</a> -- The GD library. - Note if you are using linux and have this installed in /usr/lib, you - will need to install the latest version over the existing install - unless you have gd-2.0.22 or later</li> - - <li><a - href=http://newcenturycomputers.net/projects/gdmodule.html>gdmodule-0.52</a> - -- The python interface to the gd module.</li> - - </ul> - -<h4><a name=GDWIN32>Quick install guide for GD output: Windows</a></h4> - -In addition to Numeric, you'll need - -<ul> - -<li> The GD DLL <a href=gd/bgd.dll>bgd.dll</a> somewhere in your -PATH</li> - -<li> gdmodule for win32 and python2.3 <a href=gd/gdmodule-0.52a.win32-py2.3.exe >gdmodule-0.52a</a>.</li> - -</ul> - <a name=PS><h3>Postscript</h3></a> -The only requirement is <a -href=http://sourceforge.net/projects/numpy>Numeric/numarray</a><p> +The only requirement is <a href=http://numpy.scipy.org/>numpy</a><p> See the <a href=fonts.html#PSFONTS>fonts page</a> for more information about getting the postscript backend setup for proper font rendering; @@ -334,37 +279,8 @@ ship with matplotlib. -<a name=Paint><h3>Paint</h3></a> -David Moore has written a paint backend for matplotlib. paint is a <a -href=http://www.levien.com/libart>libart</a> wrapper</a>. In a -nutshell, libart is a svg oriented, high performance, 2D graphics -engine that supports lots of nifty features. The paint backend -exposes some of them, and David has been extending it to expose more.<p> -The paint backend requires <a -href=http://sourceforge.net/projects/numpy>Numeric/numarray</a>, <a -href=http://sourceforge.net/projects/pypaint>pypaint</a> version 0.3. - -libart is highly portable, and the paint backend has been confirmed to -work on win32 and linux. The pypaint web site has a src distribution -and a windows installer.<p> - - - -<a name=EMF><h3>EMF</h3></a> - -Rob McMullen has written an Enhanced Metafile (EMF) backend for -matplotlib, which requires <a -href="http://pyemf.sourceforge.net">pyemf</a> version 2.0.0b1 (or -newer). EMF is a vector graphics format supported by the -cross-platform OpenOffice suite as well as most Windows office -applications. EMF images can also be embedded within Rich Text Format -(.rtf) files to create a single document with multiple plots. <p> - - - - @footer@ Modified: trunk/htdocs/classdocs.html.template =================================================================== --- trunk/htdocs/classdocs.html.template 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/classdocs.html.template 2007年11月29日 19:42:34 UTC (rev 4503) @@ -18,7 +18,7 @@ ('lines', 'The Line2D classes'), ('mathtext', 'Use TeX expressions in text'), ('mlab', 'Non-graphical matlab® funcs to compliment MLab'), - ('numerix', 'Choose Numeric or numarray'), + ('numerix', 'Choose Numeric, numarray or numpy'), ('patches', 'Rectangles, polygons, circles, etc...'), ('pylab', 'The matlab® functional interface'), ('table', 'Table class'), Modified: trunk/htdocs/convert.py =================================================================== --- trunk/htdocs/convert.py 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/convert.py 2007年11月29日 19:42:34 UTC (rev 4503) @@ -20,7 +20,7 @@ class NewsBox: def __init__(self, body, title='News Flash'): self.body = body - self.title + self.title = title def format_header(self): return """ @@ -187,18 +187,10 @@ # re-add news to the params dict 'tables' entry below for news news1 = NewsBox("""matplotlib <a -href="http://sourceforge.net/project/showfiles.php?group_id=80706&package_id=82474">0.90.1</a> -is out. The 0.90 series is the last release that will continue to -support Numeric, numarray and numpy. At 0.91, we will be using numpy -only internally, though we will continue to provide the <a -href=matplotlib.numerix.html>numerix</a> compaitibility layer for -external use. """, title='New release') +href="http://sourceforge.net/project/showfiles.php?group_id=80706&package_id=82474">0.91.0</a> +is out. See <a href=whats_new.html>what's new</a> for a summary of new features. """, title='New release') -news2 = NewsBox(""" -If you are upgrading matplotlib from an earlier version, please make sure you are using the most recent matplotlib configuration file because we have made a number of organizational changes. See <a href=matplotlibrc>matplotlibrc<a/> for information about typical locations of your configuration files and directories. See also the <a href=faq.html#FONTMISSING>missing fonts FAQ</a>. -""", title='Missing fonts') - table1 = LinkBox(header='Matplotlib', links=( ('Home', 'http://matplotlib.sourceforge.net'), #('Donate', 'donations.html'), @@ -233,7 +225,7 @@ params = { 'myemail' : '<a href=mailto:jdh...@ac...> (jdh...@ac...)</a>', - 'tables' : (news1, news2, table1, table2, table3), + 'tables' : (news1, table1, table2, table3), 'default_table' : 'border=1 cellpadding=3 cellspacing=2', } Modified: trunk/htdocs/credits.html.template =================================================================== --- trunk/htdocs/credits.html.template 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/credits.html.template 2007年11月29日 19:42:34 UTC (rev 4503) @@ -72,7 +72,7 @@ cleaning up backend imports and expanding pylab functionality, and provided matplotlib support in the pylab mode for <a href=http://ipython.scipy.org>ipython</a>. He also provided the <a - href=matplotlib.pylab.html#-matshow>matshow</a> command.</li> + href=matplotlib.pyplot.html#-matshow>matshow</a> command.</li> <li>Andrew Dalke of Dalke Scientific Software contributed the strftime formatting code to handle years earlier than 1900</li> Modified: trunk/htdocs/examples/agg_resize.py =================================================================== --- trunk/htdocs/examples/agg_resize.py 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/examples/agg_resize.py 2007年11月29日 19:42:34 UTC (rev 4503) @@ -4,4 +4,4 @@ imMatrix = agg.trans_affine(1,0,0,1,0,0) -interp = agg.span_interpolator_linear(imMatrix); +interp = agg.span_interpolator_linear(imMatrix); Modified: trunk/htdocs/examples/agg_test.py =================================================================== --- trunk/htdocs/examples/agg_test.py 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/examples/agg_test.py 2007年11月29日 19:42:34 UTC (rev 4503) @@ -22,7 +22,7 @@ pf = agg.pixel_format_rgba(rbuf) rbase = agg.renderer_base_rgba(pf) -rbase.clear_rgba8(blue) +rbase.clear_rgba8(blue) renderer = agg.renderer_scanline_aa_solid_rgba(rbase); renderer.color_rgba8( red ) @@ -106,39 +106,42 @@ renderer.color_rgba8( white ) agg.render_scanlines_rgba(rasterizer, scanline, renderer); -## Copy a rectangle from the buffer the rectangle defined by -## x0,y0->x1,y1 and paste it at xdest, ydest -x0, y0 = 10, 50 -x1, y1 = 110, 190 -xdest, ydest = 350, 200 +if 0: + ## Copy a rectangle from the buffer the rectangle defined by + ## x0,y0->x1,y1 and paste it at xdest, ydest + x0, y0 = 10, 50 + x1, y1 = 110, 190 + xdest, ydest = 350, 200 -widthr, heightr = x1-x0, y1-y0 -strider = widthr*4 -copybuffer = agg.buffer(widthr, heightr, strider) -rbufcopy = agg.rendering_buffer() -rbufcopy.attachb(copybuffer) -pfcopy = agg.pixel_format_rgba(rbufcopy) -rbasecopy = agg.renderer_base_rgba(pfcopy) + widthr, heightr = x1-x0, y1-y0 + strider = widthr*4 + copybuffer = agg.buffer(widthr, heightr, strider) -rect = agg.rect(x0, y0, x1, y1) -print rect.is_valid() -rectp = agg.rectPtr(rect) -#print dir(rbasecopy) -# agg is funny about the arguments to copy from; the last 2 args are -# dx, dy. If the src and dest buffers are the same size and you omit -# the dx and dy args, the position of the copy in the dest buffer is -# the same as in the src. Since our dest buffer is smaller than our -# src buffer, we have to offset the location by -x0, -y0 -rbasecopy.copy_from(rbuf, rect, -x0, -y0); + rbufcopy = agg.rendering_buffer() + rbufcopy.attachb(copybuffer) + pfcopy = agg.pixel_format_rgba(rbufcopy) + rbasecopy = agg.renderer_base_rgba(pfcopy) -# paste the rectangle at a new location xdest, ydest -rbase.copy_from(rbufcopy, None, xdest, ydest); + rect = agg.rect(x0, y0, x1, y1) + print rect.is_valid() + rectp = agg.rectPtr(rect) + #print dir(rbasecopy) + # agg is funny about the arguments to copy from; the last 2 args are + # dx, dy. If the src and dest buffers are the same size and you omit + # the dx and dy args, the position of the copy in the dest buffer is + # the same as in the src. Since our dest buffer is smaller than our + # src buffer, we have to offset the location by -x0, -y0 + rbasecopy.copy_from(rbuf, rect, -x0, -y0); + # paste the rectangle at a new location xdest, ydest + rbase.copy_from(rbufcopy, None, xdest, ydest); + + ## Display it with PIL s = buffer.to_string() print len(s) Modified: trunk/htdocs/examples/anscombe.py =================================================================== --- trunk/htdocs/examples/anscombe.py 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/examples/anscombe.py 2007年11月29日 19:42:34 UTC (rev 4503) @@ -25,7 +25,7 @@ subplot(221) plot(x,y1,'ks', xfit, fit(xfit), 'r-', lw=2) -axis([2,20,2,14]) +axis([2,20,2,14]) setp(gca(), xticklabels=[], yticks=(4,8,12), xticks=(0,10,20)) text(3,12, 'I', fontsize=20) Modified: trunk/htdocs/examples/axes_demo.py =================================================================== --- trunk/htdocs/examples/axes_demo.py 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/examples/axes_demo.py 2007年11月29日 19:42:34 UTC (rev 4503) @@ -1,5 +1,5 @@ #!/usr/bin/env python - + from pylab import * # create some data to use for the plot @@ -7,7 +7,7 @@ t = arange(0.0, 10.0, dt) r = exp(-t[:1000]/0.05) # impulse response x = randn(len(t)) -s = conv(x,r)[:len(x)]*dt # colored noise +s = convolve(x,r)[:len(x)]*dt # colored noise # the main axes is subplot(111) by default plot(t, s) @@ -27,7 +27,7 @@ plot(t[:len(r)], r) title('Impulse response') setp(a, xlim=(0,.2), xticks=[], yticks=[]) - + #savefig('../figures/axes_demo.eps') #savefig('../figures/axes_demo.png') show() Modified: trunk/htdocs/examples/axes_props.py =================================================================== --- trunk/htdocs/examples/axes_props.py 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/examples/axes_props.py 2007年11月29日 19:42:34 UTC (rev 4503) @@ -42,9 +42,9 @@ ticklines = ax.get_xticklines() ticklines.extend( ax.get_yticklines() ) -gridlines = ax.get_xgridlines() +gridlines = ax.get_xgridlines() gridlines.extend( ax.get_ygridlines() ) -ticklabels = ax.get_xticklabels() +ticklabels = ax.get_xticklabels() ticklabels.extend( ax.get_yticklabels() ) for line in ticklines: Modified: trunk/htdocs/examples/backend_driver.py =================================================================== --- trunk/htdocs/examples/backend_driver.py 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/examples/backend_driver.py 2007年11月29日 19:42:34 UTC (rev 4503) @@ -1,38 +1,62 @@ #!/usr/bin/env python """ This is used to drive many of the examples across the backends, for -regression testing, and comparing backend efficiency +regression testing, and comparing backend efficiency. + +The script takes one or more arguments specifying backends +to be tested, e.g. + + python backend_driver.py agg ps cairo.png cairo.ps + +would test the agg and ps backends, and the cairo backend with +output to png and ps files. + +If no arguments are given, a default list of backends will be +tested. """ from __future__ import division import os, time, sys +import matplotlib.backends as mplbe + files = ( 'alignment_test.py', 'arctest.py', + 'arrow_demo.py', 'axes_demo.py', + 'axhspan_demo.py', 'bar_stacked.py', 'barchart_demo.py', + 'boxplot_demo.py', + 'broken_barh.py', + 'barh_demo.py', 'color_demo.py', + 'colorbar_only.py', + 'cohere_demo.py', 'contour_demo.py', 'contourf_demo.py', - 'csd_demo.py', + 'csd_demo.py', 'custom_ticker1.py', 'customize_rc.py', 'date_demo1.py', 'date_demo2.py', + 'equal_aspect_ratio.py', + 'errorbar_limits.py', 'figimage_demo.py', 'figlegend_demo.py', 'figtext.py', 'fill_demo.py', 'finance_demo.py', -# 'fonts_demo_kw.py', + 'fonts_demo_kw.py', 'histogram_demo.py', + 'hline_demo.py', 'image_demo.py', 'image_demo2.py', - 'image_demo_na.py', + 'image_masked.py', 'image_origin.py', 'invert_axes.py', 'layer_images.py', + 'legend_auto.py', 'legend_demo.py', 'legend_demo2.py', 'line_collection.py', @@ -53,11 +77,18 @@ 'polar_demo.py', 'polar_scatter.py', 'psd_demo.py', + 'quadmesh_demo.py', 'quiver_demo.py', 'scatter_demo.py', 'scatter_demo2.py', + 'scatter_star_poly.py', + 'shared_axis_demo.py', + 'shared_axis_across_figures.py', 'simple_plot.py', 'specgram_demo.py', + 'spy_demos.py', + 'stem_plot.py', + 'step_demo.py', 'stock_demo.py', 'subplot_demo.py', # 'set_and_get.py', @@ -74,39 +105,52 @@ ) -#tests known to fail on python22 (require datetime) -fail22 = ( - 'date_demo1.py', - 'date_demo2.py', - 'finance_demo.py', - ) - - # tests known to fail on a given backend failbackend = dict( SVG = ('tex_demo.py,'), ) -def drive(backend, python='python'): +try: + import subprocess + def run(arglist): + try: + subprocess.call(arglist) + except KeyboardInterrupt: + sys.exit() +except ImportError: + def run(arglist): + os.system(' '.join(arglist)) +def drive(backend, python=['python'], switches = []): exclude = failbackend.get(backend, []) - + # Strip off the format specifier, if any. + if backend.startswith('cairo'): + _backend = 'cairo' + else: + _backend = backend for fname in files: if fname in exclude: print '\tSkipping %s, known to fail on backend: %s'%backend continue - print '\tdriving %s' % fname + print ('\tdriving %-40s' % (fname)), basename, ext = os.path.splitext(fname) outfile = basename + '_%s'%backend tmpfile_name = '_tmp_%s.py' % basename tmpfile = file(tmpfile_name, 'w') + for line in file(fname): + line_lstrip = line.lstrip() + if line_lstrip.startswith("#"): + tmpfile.write(line) + else: + break + tmpfile.writelines(( 'from __future__ import division\n', 'import matplotlib\n', - 'matplotlib.use("%s")\n' % backend, + 'matplotlib.use("%s")\n' % _backend, 'from pylab import savefig\n', )) for line in file(fname): @@ -117,36 +161,43 @@ line_lstrip.startswith('show')): continue tmpfile.write(line) - if backend in ('GTK', 'WX', 'TkAgg'): + if backend in mplbe.interactive_bk: tmpfile.write('show()') else: tmpfile.write('savefig("%s", dpi=150)' % outfile) tmpfile.close() - os.system('%s %s' % (python, tmpfile_name)) + start_time = time.time() + run(python + [tmpfile_name, switchstring]) + end_time = time.time() + print (end_time - start_time) + #os.system('%s %s %s' % (python, tmpfile_name, switchstring)) os.remove(tmpfile_name) - if __name__ == '__main__': times = {} - # backends = ['Agg', 'Cairo', 'GDK', 'PS', 'SVG', 'Template'] - #backends = ['Agg', 'PS', 'SVG', 'Template'] - # backends = [ 'GTK', 'WX', 'TkAgg'] - default_backends = ['Agg', 'PS', 'SVG', 'Template'] - #default_backends = ['Agg'] - #backends = ['Agg'] - if sys.platform == 'win32': - python = r'c:\Python24\python.exe' + default_backends = ['Agg', 'PS', 'SVG', 'PDF', 'Template'] + if '--coverage' in sys.argv: + python = ['coverage.py', '-x'] + sys.argv.remove('--coverage') + elif sys.platform == 'win32': + python = [r'c:\Python24\python.exe'] else: - python = 'python' + python = ['python'] + all_backends = [b.lower() for b in mplbe.all_backends] + all_backends.extend(['cairo.png', 'cairo.ps', 'cairo.pdf', 'cairo.svg']) + backends = [] + switches = [] if sys.argv[1:]: - backends = [b for b in sys.argv[1:] if b in default_backends] - else: + backends = [b.lower() for b in sys.argv[1:] if b.lower() in all_backends] + switches = [s for s in sys.argv[1:] if s.startswith('--')] + if not backends: backends = default_backends for backend in backends: - print 'testing %s' % backend + switchstring = ' '.join(switches) + print 'testing %s %s' % (backend, switchstring) t0 = time.time() - drive(backend, python) + drive(backend, python, switches) t1 = time.time() times[backend] = (t1-t0)/60.0 Modified: trunk/htdocs/examples/color_by_yvalue.py =================================================================== --- trunk/htdocs/examples/color_by_yvalue.py 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/examples/color_by_yvalue.py 2007年11月29日 19:42:34 UTC (rev 4503) @@ -1,7 +1,7 @@ # use masked arrays to plot a line with different colors by y-value -import matplotlib.numerix.ma as ma -from matplotlib.numerix import logical_or -from pylab import plot, show, arange, sin, pi +import matplotlib.numerix.npyma as ma +from numpy import logical_or, arange, sin, pi +from matplotlib.pyplot import plot, show t = arange(0.0, 2.0, 0.01) s = sin(2*pi*t) Modified: trunk/htdocs/examples/colours.py =================================================================== --- trunk/htdocs/examples/colours.py 2007年11月29日 16:28:07 UTC (rev 4502) +++ trunk/htdocs/examples/colours.py 2007年11月29日 19:42:34 UTC (rev 4503) @@ -2,22 +2,20 @@ """ Some simple functions to generate colours. """ -from matplotlib.numerix import asarray, asum -from matplotlib.mlab import linspace +import numpy as npy from matplotlib.colors import colorConverter... [truncated message content]
Revision: 4530 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4530&view=rev Author: mdboom Date: 2007年11月30日 11:31:05 -0800 (2007年11月30日) Log Message: ----------- Lots of updates to bring the website inline with 0.91.1 Modified Paths: -------------- trunk/htdocs/backends.html.template trunk/htdocs/faq.html.template trunk/htdocs/fonts.html.template trunk/htdocs/tutorial.html.template Modified: trunk/htdocs/backends.html.template =================================================================== --- trunk/htdocs/backends.html.template 2007年11月30日 17:39:05 UTC (rev 4529) +++ trunk/htdocs/backends.html.template 2007年11月30日 19:31:05 UTC (rev 4530) @@ -1,25 +1,475 @@ -@header@ +@header@ <h2>matplotlib backends</h2> The matplotlib core graphics routines interact with an abstract renderer and graphics context to allow device independent ouput. -Currently, output to pygtk, wxPython, Tkinter, postscript, -pdf, svg, agg (antigrain geometry) and Cairo are supported. With -not too much effort, you can port matplotlib to your favorite display; -high on my list of priorities are PDF and PIL. If you are interested -in porting to one of these platforms, please contact me!<p> +Currently, output to pygtk, wxPython, Tkinter, postscript, pdf, svg, +agg (antigrain geometry) and Cairo are supported. With not too much +effort, you can port matplotlib to your favorite display. If you are +interested in porting to one of these platforms, please contact the +<a href="http://sourceforge.net/mailarchive/forum.php?forum_name=matplotlib-devel">matplotlib-devel</a> +mailing list.<p> -For a summary of the comparative strengths and features of the various -backends, see <a href=faq.html#WHICHBACKEND>which backend should I -use?</a>. This page describes how to install and use each backend.<p> - -You can choose your default backend in the <a -href=matplotlibrc>matplotlibrc</a> file. The default can be -overridden from the command line prompt. This allows most if not all -matplotlib scripts can generate output to any of the backends without -any alterations. Following the lead of the matlab <tt>print</tt> -command, the backend can be chosen from the command line with the +<a name="comparision"/><h2>Comparison of backends</h2> + +The following table enumerates the capabilities of the different backends.<p> + +<!-- This HTML table template is generated by emacs 22.1.1 --> +<table border="1"> + <tr bgcolor="#dddddd"> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + output formats + </td> + <td align="left" valign="top"> + rotated text + </td> + <td align="left" valign="top"> + usetex + </td> + <td align="left" valign="top"> + alpha-blending + </td> + <td align="left" valign="top"> + arbitrary clipping<br/> (polar plots) + </td> + <td align="left" valign="top"> + images + </td> + </tr> + <tr> + <td align="left" valign="top"> + Agg + </td> + <td align="left" valign="top"> + png, raw + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + Cairo + </td> + <td align="left" valign="top"> + pdf, + png,ps, + svg, + svgz + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + CocoaAgg + </td> + <td align="left" valign="top"> + png, + raw + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + Emf + </td> + <td align="left" valign="top"> + emf + </td> + <td align="left" valign="top"> + ? + </td> + <td align="left" valign="top"> + ? + </td> + <td align="left" valign="top"> + ? + </td> + <td align="left" valign="top"> + ? + </td> + <td align="left" valign="top"> + ? + </td> + </tr> + <tr> + <td align="left" valign="top"> + FltkAgg + </td> + <td align="left" valign="top"> + png, + raw + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + Gtk + (Gdk) + </td> + <td align="left" valign="top"> + jpeg, + png, + raw + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + GtkAgg + </td> + <td align="left" valign="top"> + jpeg, + png, + raw + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + GtkCairo + </td> + <td align="left" valign="top"> + jpeg, + pdf, + png, + ps, + svg, + svgz + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + Pdf + </td> + <td align="left" valign="top"> + pdf + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + Ps + </td> + <td align="left" valign="top"> + eps,ps + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + QtAgg + </td> + <td align="left" valign="top"> + png,raw + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + Qt4Agg + </td> + <td align="left" valign="top"> + png,raw + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + Svg + </td> + <td align="left" valign="top"> + svg, + svgz + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + TkAgg + </td> + <td align="left" valign="top"> + png,raw + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + </tr> + <tr> + <td align="left" valign="top"> + Wx + </td> + <td align="left" valign="top"> + bmp, + jpeg, + pcx, + png, + raw, + tiff, + xpm + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + + </td> + <td align="left" valign="top"> + + </td> + </tr> + <tr> + <td align="left" valign="top"> + WxAgg + </td> + <td align="left" valign="top"> + png,raw + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + <td align="left" valign="top"> + X + </td> + </tr> +</table> + +<p> + +In addition to these factors, there are other factors that may +affect your backend selection:<p> + +<ul> + <li><b>Scalability:</b> For print, the ability to scale the image to any + resolution is important. Postscript, Pdf and Svg are good + candidates for this. Which will work best for you depends on the + publication tools you are using. + + <li><b>Speed:</b> When running locally, the Agg-related backends are likely + to be the fastest since most of Agg is renderered in C extension + code, and most of the optimization effort has been dedicated to + it. However, when running X11 remotely, the Gtk and Wx backends + may be faster since they send high-level X commands over the + network rather than pixel data.</li> + + <li><b>Interactivity:</b> All of the GUI backends can be used interactively + from a python shell (see <a href=interactive.html>interactive</a>) but + TkAgg is the hands-down winner here since it can be use from any + python shell whereas the GTK and Wx backends require a GUI specific + shell.</li> + + <li><b>Pretty widgets:</b> If you want to embed matplotlib in an application and + pretty GUIs are important to you, Wx, GTK, GTKAgg or GTKCairo are probably + your best best. Tk and Fltk widgets are not visually stunning. </li> +</ul> + +<h3>Choosing a backend</h3> + +You can choose your default backend in +the <a href=matplotlibrc>matplotlibrc</a> file, using the 'backend' +option. The default can be overridden from the command line prompt. +This allows most if not all matplotlib scripts to generate output to +any of the backends without any alterations. Following the lead of +the matlab <tt>print</tt> command, the backend can be chosen from the +command line with the <tt>-d</tt> flag, as in <pre> @@ -59,10 +509,11 @@ matplotlib.use('PS') </pre> -The current backend strings that are supported are +The current backend strings that are supported are <a href=matplotlib.backends.backend_agg.html>Agg</a>, <a href=matplotlib.backends.backend_cairo.html>Cairo</a>, <a +href=matplotlib.backends.backend_fltkagg.html>FltkAgg</a>, <a href=matplotlib.backends.backend_gtk.html>GTK</a>, <a href=matplotlib.backends.backend_gtkagg.html>GTKAgg</a>, <a href=matplotlib.backends.backend_gtkcairo.html>GTKCairo</a>, <a @@ -90,15 +541,17 @@ Specific information for installing the other backends can be found on this page below or by clicking <ul> -<li><a href=backends.html#Agg>Agg</a></li> -<li><a href=backends.html#Cairo>Cairo</a></li> -<li><a href=backends.html#TkAgg>TkAgg</a></li> -<li><a href=backends.html#GTK>GTK</a></li> -<li><a href=backends.html#GTKAgg>GTKAgg</a></li> -<li><a href=backends.html#GTKCairo>GTKCairo</a></li> -<li><a href=backends.html#WX>WX</a></li> -<li><a href=backends.html#WXAgg>WXAgg</a></li> -<li><a href=backends.html#PS>PS</a></li> +<li><a href=#Agg>Agg</a></li> +<li><a href=#Cairo>Cairo</a></li> +<li><a href=#TkAgg>TkAgg</a></li> +<li><a href=#GTK>GTK</a></li> +<li><a href=#GTKAgg>GTKAgg</a></li> +<li><a href=#GTKCairo>GTKCairo</a></li> +<li><a href=#WX>WX</a></li> +<li><a href=#WXAgg>WXAgg</a></li> +<li><a href=#PS>PS</a></li> +<li><a href=#PDF>PDF</a></li> +<li><a href=#SVG>SVG</a></li> </ul> @@ -112,20 +565,19 @@ scripts. Agg can also be embedded in GUI applications, as in the GTKAgg and TkAgg backends -- see <tt>setup.py</tt><p> -The windows installer comes with Agg prebuilt. For other platforms, -to compile Agg from src, set the <tt>BUILD_AGG</tt> flag in -<tt>setup.py</tt>. +matplotlib includes its own copy of Agg. It does not need to be +installed separately, even if compiling matplotlib from source. <a name=Cairo><h3>Cairo</h3></a> -<a href=http://cairographics.org>Cairo</a> is a vector graphics -library designed to provide high-quality display and print output. +<a href=http://cairographics.org>Cairo</a> is a vector graphics +library designed to provide high-quality display and print output. It doesn't depend on a GUI framework and is suitable for use in web application servers generating images for html inclusion or for generating images in batch scripts. Cairo can also be embedded in GUI applications, as in the GTKCairo backend<p> -It requires pycairo version 0.5.0 or higher from +It requires pycairo version 0.5.0 or higher from <a href=http://www.freedesktop.org/Cairo/download>Cairo downloads</a> @@ -133,35 +585,23 @@ This was the first backend supported by matplotlib; it requires -<ul> +<ul> <li><a href=http://numpy.scipy.org/>numpy</a></li> <li><a href=http://prdownloads.sourceforge.net/gtk-win> -GTK runtime</a></li> +GTK runtime</a></li> <li><a href=http://www.pygtk.org>pygtk</a> version 2.0.0 or later</li> </ul> -<h4>Redhat Users</h4> - - GTK2 became the default with the Redhat Linux 8 series. If your - distro is older than that, you'll need to upgrade your desktop, - upgrade your gtk libs, or upgrade your distro.<p> - - I am not sure what the status of GTK2 versus version number is with - the other distros, but I would be happy for answers, so if you know, - please email me @myemail@. If you put matplotlib in the subject, - the email will be sure to get past my spam filters.<p> - - <h2> Windows GTK Quickstart</h2> These install instructions will provide the <a href=backends.html#GTK>GTK<a/> and <a -href=backends.html#GTKAgg>GTK<a/>GTKAgg</a> backends on windows. If +href=backends.html#GTKAgg>GTKAgg<a/> backends on windows. If you encounter troubles, please see <a href=http://matplotlib.sourceforge.net/faq.html#GTKPATH>the FAQ</a><ul> @@ -184,7 +624,7 @@ <li> Install matplotlib using the windows installer on the <a ref=http://sourceforge.net/projects/matplotlib>download page<a></li> -</ul> +</ul> <a name=WX><h3>WX</h3></a> @@ -212,7 +652,7 @@ limitation, GTKAgg marries the widgets of GTK with the rendering of <a href=http:///antigrain.com>antigrain</a>. You need the <a href=backends.html#Agg>agg</a> and <a href=backends.html#GTK>gtk</a> -prerequisites. On windows, GTKAgg is builtin, so you only need to +prerequisites. Agg is builtin, so you only need to install pygtk and the GTK runtime, as described in <a href=backends.html#GTK>gtk</a>. @@ -270,7 +710,7 @@ <a name=PS><h3>Postscript</h3></a> -The only requirement is <a href=http://numpy.scipy.org/>numpy</a><p> +The only requirement is <a href=http://numpy.scipy.org/>numpy</a>.<p> See the <a href=fonts.html#PSFONTS>fonts page</a> for more information about getting the postscript backend setup for proper font rendering; @@ -278,9 +718,15 @@ <tt>AFMPATH</tt> if you want to use fonts other than the ones that ship with matplotlib. +<a name=PS><h3>PDF</h3></a> +The only requirement is <a href=http://numpy.scipy.org/>numpy</a>.<p> +<a name=PS><h3>SVG</h3></a> +The only requirement is <a href=http://numpy.scipy.org/>numpy</a>.<p> + + @footer@ Modified: trunk/htdocs/faq.html.template =================================================================== --- trunk/htdocs/faq.html.template 2007年11月30日 17:39:05 UTC (rev 4529) +++ trunk/htdocs/faq.html.template 2007年11月30日 19:31:05 UTC (rev 4530) @@ -2,7 +2,7 @@ FAQs = ( - ('BUGREPORT', + ('BUGREPORT', 'How do I report a problem?', """\ OK, this is not a FAQ, but I wish it were <wink>.<p> @@ -13,7 +13,7 @@ <pre> > rm -rf build - > python setup.py build + > python setup.py build </pre> @@ -110,7 +110,7 @@ ('CLICKMAPS', "Can I use matplotlib to make clickable images?" , - """\ + """ Yes. Andrew Dalke of <a href=http://www.dalkescientific.com>Dalke Scientific</a> has written a nice <a href=http://www.dalkescientific.com/writings/diary/archive/2005/04/24/interactive_html.html>article</a> @@ -188,7 +188,7 @@ approach taken in <a href=examples/log_bar.py>log_bar.py</a>. """), - ('EQUAL', + ('EQUAL', 'How do I make my figure square / axes sides equal?', """\ There are three considerations: the width/height of the figure, of the @@ -210,7 +210,7 @@ vertical resolutions, you can do a little hack on the figure width and height to correct for the display differences. """), - + ('FREEZE', 'My matplotlib window is freezing', @@ -270,7 +270,7 @@ The swiss army knife of image tools, ImageMagick's <a href=http://imagemagick.sourceforge.net/www/convert.html>convert</a>, -works for this as well.<p> +works for this as well.<p> Here is a simple example script that saves some PNGs, makes them into a movie, and then cleans up. @@ -299,10 +299,10 @@ </pre> """), - + ('FONTMISSING', "When I start matplotlib, I am getting warnings about not being able to find fonts?", """ -matplotlib uses a cache file to store information about your system fonts, and occasionally we reorganize our direcotroy schemes or your system may have changed. When you get warnings about missing fonts, try removing your font cache directory "ttffont.cache" which is located in your ".matplotlib" configuration directory. Where this is depends on your operating system but see the prolog of <a href=matplotlibrc>matplotlibrc</a> for information on where this is stored. You can also run a test pylab script with <tt>--verbose-helpful</tt> or <tt>--verbose-debug</tt>, eg +matplotlib uses a cache file to store information about your system fonts, and occasionally we reorganize our directory schemes or your system may have changed. When you get warnings about missing fonts, try removing your font cache directory "fontManager.cache" which is located in your ".matplotlib" configuration directory. Where this is depends on your operating system but see the prolog of <a href=matplotlibrc>matplotlibrc</a> for information on where this is stored. You can also run a test pylab script with <tt>--verbose-helpful</tt> or <tt>--verbose-debug</tt>, eg <pre> > python test.py --verbose-helpful @@ -326,14 +326,14 @@ install. You may want to try rebuilding with <pre> > rm -rf build - > python setup.py build > build.out + > python setup.py build > build.out </pre> and post the results to the matplotlib-devel or matplotlib-users <a href=http://sourceforge.net/mail/?group_id=80706>mailing lists</a>. """), - + ('EXAMPLES', 'Where can I find information about what matplotlib can do?', """\ @@ -366,39 +366,22 @@ ('LARGEPS', "My PS/EPS files are huge; what's wrong?", """ -With matplotlib-0.61, Paul Barrett introduced truetype fonts in -backend_ps, primarily in order to support mathtext. Because he was -unable to get the individual glyphs from freetype, he had to dump the -entire font into the PS file. A typical font takes about 300K of -noncompressed space. This, however, is a fixed cost and does not -increase with the complexity of the figure or number of points -plotted. It would, however, increase if you use multiple fonts, eg in -mathtext.<p> +As of matplotlib-0.91.0, only the glyphs that are needed for the plot +are saved in the Postscript file. This significantly reduces file +sizes. To revert to the old behavior, where entire font files are +saved in the Postscript file, you can set the parameter 'ps.fonttype' +to 42. -Before 0.61, we used the afm fonts that ship with matplotlib and -matplotlib has its own <a href=matplotlib.afm.html>AFM parser</a> -which handles character metrics, kerning, etc. It would not be too -much work to have an option (eg in the matplotlib rc file) which -allows users to simply use AFM fonts when possible (eg when not using -mathtext) in which case you wouldn't see these big eps files. The -other advantage to this approach is that they seem to render nicer in -some viewers, eg xdvi.<p> - -One nice thing about dumping the truetype into the ps files is that -the text is the same across backends. The ideal solution would be -able to dump just the glyphs needed, which presumably would be much -smaller, but we haven't figured this out yet.<p> - -Given that the 300K is a fixed cost (118K gzipped), if you still find -the size sufficiently troublesome that it justifies the extra work (on -our end) to provide an option to revert to AFM fonts, please let us -know on the mailing list. +Starting with matplotlib-0.87, it is also possible to reduce +Postscript file sizes by using the standard Postscript fonts, rather +than embedding Truetype files. Just set the parameter 'ps.useafm' to +True. """), ('PROMPT', "After my matplotlib script runs, I get a python shell prompt. What's going on?", """ -Tkinter, used by the default windows backend TkAgg not have a mainloop +Tkinter, used by the default windows backend TkAgg does not have a mainloop like GTK or WX. We needed a way to keep the figure open, and decided the best way was to switch into interactive mode in python. This has the additional benefit that you can issue additional python commands @@ -453,7 +436,7 @@ Also, if you are running a python script, make sure your interactive setting in your <a href=matplotlibrc>matplotlibrc</a> is <tt>False</tt>; otherwise the figure will be redrawn with every plotting command when -what you want if for the figure to be drawn only once at the end of +what you want is for the figure to be drawn only once at the end of the script. See <a href=interactive.html>interactive</a> and <a href=faq.html#SHOW>what's up with show?</a> for more information.<p> @@ -473,16 +456,16 @@ output of <tt>python yourscript.py --verbose-helpful</tt>. """), - ('MATPLOTLIBRC', - 'How do I customize the default behavior of matplotib?', + ('MATPLOTLIBRC', + 'How do I customize the default behavior of matplotib?', """ Recent versions of matplotlib (0.51 or later) use a configuration file to set everything from the default font, to the figure size, to the default line width. See <a href=matplotlibrc>matplotlibrc</a> for a sample config file and information on how to use it. """), - ('OO', - 'Is there any guide to using matplotlib with pythonic / OO /API rather than the pylab interface?', + ('OO', + 'Is there any guide to using matplotlib with pythonic / OO /API rather than the pylab interface?', """ @@ -500,10 +483,10 @@ <li>Many examples in the <a href=examples>examples</a> directory in the matplotlib src distribution illustrate the use of the API. - Eg, + Eg, <pre> - + > grep -l FigureCanvas *.py agg_oo.py dynamic_demo_wx.py dynamic_image_wxagg.py @@ -604,7 +587,7 @@ command. See <a examples/customize_rc.py>customize_rc.py</a> for example usage."""), - + ('GTKPATH', 'I cannot import gtk / gdk / gobject', """ @@ -612,7 +595,7 @@ Basically, there are 3 things that I've seen cause failure (relative likelihood in parentheses): - <ul> + <ul> <li> You didn't set the path properly (95% of the time). <it>Solution:</it> Add the lib and bin subdirs of your GTK install @@ -635,62 +618,14 @@ thread</a>, which is filled with good troubleshooting advice. """ ), - + ('WHICHBACKEND', 'Which backend should I use?', """ -Each of the backends offers different strengths. I'll summarize some -of them. - -<h4>Image generation</h4> - -For pure image generation (no GUI) you can choose from the Agg, Cairo, -PS, SVG, Paint, GD or EMF backends. At this point, I advise people to -use the <a href=http://antigrain.com>agg</a> backend because: - -<ul> - <li>it's the fastest</li> - <li>it uses freetype2 (as does GD) which renders nicely even - at small resolutions </li> - <li>there are clipping issues with GD and Paint </li> - <li>it supports fast antialiased drawing and alpha blending </li> - <li>it supports <a href=matplotlib.mathtext.html>mathtext</a></li> - <li>it supports images with <a href=matplotlib.pyplot.html#-imshow>imshow</a></li> -</ul> - -It is likely that with time many of these limitiations or problems -will be fixed on the other backends.<p> - -For publication submission or use with TeX, however, the postscript -backend is naturally a good choice. - -<h4>GUI</h4> - -Currently there are several choices for GUIs: GTK, GTKAgg, GTKCairo, WX, -WXAgg, TkAgg and FltkAgg, with different advantages. - -<ul> - -<li>Speed: TkAgg and GTKAgg are likely to be the fastest since most of Agg is renderered in C extension code</li> - -<li>Stability: GTK was the first backend and thus has been most thoroughly -vetted for bugs. The GTKAgg and GTKCairo backends reuse the GTK widget code, -so should likewise be quite stable</li> - -<li>Interactivity: All of the GUI backends can be used interactively -from a python shell (see <a href=interactive.html>interactive</a>) but -TkAgg is the hands-down winner here since it can be use from any -python shell whereas the GTK and Wx backends require a GUI specific -shell </li> - -<li>Pretty widgets: If you want to embed matplotlib in an application and -pretty GUIs are important to you, Wx, GTK, GTKAgg or GTKCairo are probably -your best best. Tk widgets are not visually stunning. </li> - -</ul> - - +Each of the backends offers different strengths. See the + <a href="backends.html#comparison">comparison of backends for a + discussion of the issues.</p> """), ('DATES', @@ -711,19 +646,19 @@ 'Can I include math expressions in my figures?', r"""As of matplotlib-0.51, you can use TeX markup in any text element. Just use raw strings and enclose the strings with dollar signs, as in -<tt>title(r'$\\alpha > \\beta_i$')</tt>. See <a +<tt>title(r'$\alpha > \beta_i$')</tt>. See <a href=screenshots.html#mathtext_demo>screenshot</a> and the <a href=matplotlib.mathtext.html>mathtext</a> documentation for usage, requirements and backend information. """), - + ('BATCHMODE', 'Can I just generate images without having a window popup?', """ The easiest way to do this is use an image backend, either <a -href=backends.html#Agg>Agg</a>, href=backends.html#Cairo>Cairo</a>, <a -href=backends.html#GD>GD</a> or <a href=backends.html#Paint>Paint</a> -if you want to generate PNG images, eg, for use in a web page, or PS +href=backends.html#Agg>Agg</a>, or <a href=backends.html#Cairo>Cairo</a>, +if you want to generate PNG images, e.g., for use in a web page, or + PS, PDF or SVG if you want publication quality, scalable images. All of these backends run on all of the major platforms. One additional option on an X windows platform is to run the GTK backend under an Xvfb, which @@ -738,10 +673,7 @@ Yes. matplotlb can be used with any web application server that can call python. It has been used with mod_python, xml_rpc, and other frameworks. You'll want to use one of the image backends; <a -href=faq.html#BATCHMODE>see image backends</a>. Also to make small -images appropriate for use on a web page, you may want to consider the -Agg, Cairo or GD backends, since they render small font rasters using -freetype2 better than Paint, which currently use freetype1. You can +href=faq.html#BATCHMODE>see image backends</a>. You can work around the problem of small raster sizes by making your fonts appear larger for a given by decreasing the figure size and increasing the dpi. See <a href=fonts.html#TTFFONTS>ttf fonts</a> for more @@ -773,10 +705,10 @@ """ -You do not need this function with the image backends (Agg, Cairo, Paint, GD, -PS) but you do need it with the GUI (GTK, WX, TkAgg, GTKAgg, GTKCairo) backends, -unless you are running matplotlib in <a -href=interactive.html>interactive mode</a>. <p> +You do not need this function with the image backends (Agg, Cairo, PS, +PDF, SVG) but you do need it with the GUI (GTK, WX, TkAgg, GTKAgg, +GTKCairo) backends, unless you are running matplotlib +in <a href=interactive.html>interactive mode</a>. <p> Because it is expensive to draw, I want to avoid redrawing the figure many times in a batch script such as the following<p> @@ -786,7 +718,7 @@ xlabel('time') # and here ? ylabel('volts') # and here ? title('a simple plot') # and here ? - show() + show() </pre> It is possible to force matplotlib to draw after every command, which @@ -800,21 +732,23 @@ script with <tt>python -i myscript.py -dTkAgg</tt> and then change it interactively from the shell. -<b>IMPORTANT: show should called at most once per script and it should +<b>IMPORTANT: show should be called at most once per script and it should be the last line of your script. At that point, the GUI takes control of the interpreter. If you want to force a figure draw, use <a href=matplotlib.pyplot.html#-draw>draw</a> instead.</b> """), - + ('PSGUI', - 'Can I save PS/EPS from a GUI backend?', + 'Can I save PS/EPS/PDF/SVG etc. from a GUI backend?', """ -Yep. Just choose a filename that contains <tt>ps</tt> in the extension, eg -<tt>somefile.ps</tt> or <tt>somefile.eps</tt> and matplotlib will try -and do the right thing. That is, if it's an eps file, it will include -a bounding box, if it's a ps file it will output plain postscript. It -is recommended you use matplotlib-0.50 or later for this feature to -work properly."""), +Yep. Just choose a filename that contains the desired extension and +matplotlib will try and do the right thing. That is, if it's an eps +file, it will include a bounding box, if it's a ps file it will output +plain postscript. It is recommended you use matplotlib-0.91 or later +for this feature to work properly, since far fewer options are +available for all GUI backends prior to that. +"""), + ('TEXTOVERLAP', 'My title or ticklabel or whatever is overlapping some other figure element, what should I do?', """ @@ -842,7 +776,7 @@ ('DYNAMIC', - 'Can matplotlib do dynamic plots, like digital oscilloscopes or animations?', + 'Can matplotlib do dynamic plots, like digital oscilloscopes or animations?', """ Absolutely. See for example, <a href=examples/anim.py>anim.py</a> and <a href=examples/system_monitor.py>system_monitor.py</a>"""), @@ -862,10 +796,10 @@ ('IMAGES', 'Can matplotlib handle image data?', """ -Yes - you can now plot images from numerix arraysq with <a +Yes - you can now plot images from numpy arrays with <a href=matplotlib.pyplot.html#-imshow>imshow</a>. You can load png files into arrays <a href=matplotlib.pyplot.html#-imread>imread</a>; -image loaders coming soon."""), +other image loaders coming soon."""), ('ROTATETICKS', 'How do I make vertical xticklabels?', @@ -876,7 +810,7 @@ from pylab import * plot([1,2,3,4], [1,4,9,16]) set(gca(), 'xticks', [1,2,3,4]) - labels = set(gca(), 'xticklabels', + labels = set(gca(), 'xticklabels', ['Frogs', 'Hogs', 'Bogs', 'Slogs']) set(labels, 'rotation', 'vertical') show() @@ -892,7 +826,7 @@ C:\GTK\etc\pango\pango.aliases. Add a line like <pre> -times = "times new roman,angsana new,mingliu,simsun,\\ +times = "times new roman,angsana new,mingliu,simsun,\\ gulimche,ms gothic,latha,mangal,code2000" </pre> @@ -904,7 +838,7 @@ experiencing for ages with matplotlib. I was getting WARNING **: Couldn't load font "MS Sans Serif 8" falling back to "Sans 8" - errors. + errors. It's addressed in their FAQ, http://www2.arnes.si/~sopjsimo/gimp/faq.html>, reproduced here: @@ -924,20 +858,20 @@ I took option B and now all is well with both Gimp and Matplotlib. I'm running Win98 and the Gimp FAQ entry hints that it may be a -problem in Win98,ME and NT installations. +problem in Win98,ME and NT installations. </pre> -""" +""" ), - + ('FREETYPE2', "Why are my fonts not being rendered properly?", """ -This is probably due to an outdated freetype2 library. The latest -version is 2.1.9. See <a href=matplotlib.font_manager.html>font manager +This is probably due to an outdated freetype2 library. +See <a href=matplotlib.font_manager.html>font manager docs</a> for details. """ ), @@ -945,17 +879,15 @@ """My SVG viewer doesn't properly display special (TeX) characters ('\sum', '\infty',etc.) generated by mathtext. Is this a bug?""", """ -You need to install the BaKoMa fonts (TrueType version of the Computer +As of matplotlib-0.91.0, the glyph outlines for the font are embedded +directly in the SVG file, so this should not occur. + +For matplotlib-0.90.0 and earlier, +you need to install the BaKoMa fonts (TrueType version of the Computer Modern fonts) on your system. The BaKoMa fonts come packaged with matplotlib. They are located in the "site-packages/matplotlib/mpl-data/fonts/ttf" dir (the cm*.ttf files). Installation of the fonts varies from OS to OS. - -Alternatively, as of r3498 (matplotlib > 0.90.1) you can set -svg.embed_char_paths to True in your matplotlibrc file. This -setting makes matplotlib embed all fonts as paths in the SVG file, -which results in a "portable" SVG file, at the cost of bigger file -size and uneditable text. """ ), ('LEAKS', @@ -970,14 +902,13 @@ the <tt>--without-pymalloc</tt> flag, which disables pool allocation.) If after sufficient iterations, you still see that memory usage is increasing, it is a likely a bonafide memory leak that should be -reported. +reported.<p> -</a> The unit directory of the source tree contains an example scripts useful for diagnosing and reporting memory leaks. For -example, <a href="http://matplotlib.svn.sourceforge.net/viewvc/matplotlib/trunk/matplotlib/unit/memleak_hawaii.py?view=markup"><tt>memleak_hawaii.py</tt> +example, <a href="http://matplotlib.svn.sourceforge.net/viewvc/matplotlib/trunk/matplotlib/unit/memleak_hawaii.py?view=markup"><tt>memleak_hawaii.py</tt></a> is useful for finding plotting-related memory leaks, - and <a href="http://matplotlib.svn.sourceforge.net/viewvc/matplotlib/trunk/matplotlib/unit/memleak_gui.py?view=markup"><tt>memleak_gui.py</tt> + and <a href="http://matplotlib.svn.sourceforge.net/viewvc/matplotlib/trunk/matplotlib/unit/memleak_gui.py?view=markup"><tt>memleak_gui.py</tt></a> helps find memory leaks in the GUI-backend. Please use something like these when reporting leaks so we get an idea of the magnitude of the problem (i.e. bytes per figure). Also please provide @@ -987,12 +918,12 @@ obvious coding errors vis-a-vis matplotlib.<p> There are some known memory leaks in matplotlib-0.90.1 when used in -conjunction with the Tk, Gtk, Wx, Qt and Qt4 GUI backends. Many of -these leaks have resolutions in the current SVN version of matplotlib. +conjunction with the Tk, Gtk, Wx, Qt and Qt4 GUI backends. Many of +these leaks have resolutions in the current SVN version of matplotlib. However, the following library versions are known to have leaks that matplotlib triggers. If you have one of these versions and are experiencing memory leaks, you should upgrade your library. This is -not an exhaustive list. +not an exhaustive list.<p> <ul> <li><b>Wx backend:</b>wxPython-2.8.2 or earlier in the 2.8 series @@ -1028,7 +959,7 @@ This will print out all of the reference cycles that are preventing the uncollectable objects from being freed. The code should then be modified to prevent these cycles, or break the cycles during - destruction. + destruction.<p> <li><b>Real references:</b> Sometimes objects are legitimately being held onto by other Python objects. When this happens, you would @@ -1045,7 +976,7 @@ <pre> original_objects = [id(x) for x in gc.get_objects()] # ... do something that leaks objects - new_objects = [x for x in gc.get_objects() + new_objects = [x for x in gc.get_objects() if id(x) not in original_objects] </pre> You can then determine what is referencing those objects and @@ -1053,7 +984,7 @@ <pre> print gc.get_referents(x) </pre> - The code should be modified to prevent these unwanted references. + The code should be modified to prevent these unwanted references.<p> <li><b>C/C++ leaks in extension objects:</b> These is the classic problem of objects that are "malloc'd/new'd" and never @@ -1104,9 +1035,9 @@ href=http://matplotlib.sf.net/examples>examples</a> explaining how to embed matplotlib in your GUI of choice. """), - + ) - + @header@ <h2> matplotlib FAQ </h2> Modified: trunk/htdocs/fonts.html.template =================================================================== --- trunk/htdocs/fonts.html.template 2007年11月30日 17:39:05 UTC (rev 4529) +++ trunk/htdocs/fonts.html.template 2007年11月30日 19:31:05 UTC (rev 4530) @@ -1,39 +1,29 @@ -@header@ -<h2>Font handling</h2> +@header@ +<h2>Font handling</h2> I have spent a lot of time trying to make text in matplotlib look good. This has been a limitation of many pre-exisiting python graphing solutions, but with the rise of freetype and anti-aliased rendering for linux, it is now possible to have great looking fonts. -<h3><a name=TTFFONTS>Freetype fonts: GD, Agg, Paint</a></h3> +<h3><a name=TTFFONTS>Truetype fonts</a></h3> -The GD, Agg, and Paint backends all support freetype fonts, which +All of the backends support Truetype fonts, which provide high quality, anti-aliased font rendering to PNG and JPEG output -without X support. This is particularly useful for batch processing +with or without X support. This is particularly useful for batch processing over terminal, or for web application servers. <p> You need to have truetype '*.ttf' files on your system to use these fonts. The font finder does platform dependent searches to find them. -In addition, matplotlib distributes the <tt>Vera</tt> fonts from -bitstream, which were released under a permissive license, as well as -the BaKoMa computer modern TeX fonts, which are free for noncommerical -use. If you want more, set the environment variable <tt>TTFPATH</tt> to -point to them. Note, if you are on linux but have access to a licensed -copy of windows ttf fonts, the same <tt>*.ttf</tt> fonts in -<tt>C:\windows\fonts</tt> will work with matplotlib on linux if you -place them in your TTFPATH; see <a href=http://corefonts.sf.net>core -fonts</a>.<p> +In addition, matplotlib distributes +the <a href="http://www.gnome.org/fonts">Vera</a> fonts from +Bitstream, the BaKoMa Computer Modern TeX fonts, and +the <a href="http://www.stixfonts.org/">STIX</a> math fonts, all of +which are available under different permissive licenses. If you want +more, most of the time, matplotlib will pick up fonts installed in the +standard place(s) on your operating system. Note that on Linux, you +may need to run 'fc-cache' after installing new fonts.<p> -If you are using matplotlib to generate images for html, you may want to -consider using a backend which supports freetype2. freetype 2 tends to -render fonts better at very small raster sizes. See <a -href=faq.html#APPSERVER>matplotlib images in html</a> and <a -href=matplotlib.font_manager.html>font manager docs</a> for more -information. The Agg and GD image backends both support freetype2. If -you are trying to decide among an image backend, see the <a -href=faq.html#WHICHBACKEND>which backend should I use</a><p> - If you are aware of other freely distributable ttf fonts, please contact me. @@ -45,6 +35,14 @@ describing fonts. Formerly, matplotlib required the external packages fonttools and ttfquery, but no longer does.<p> +As of matplotlib-0.91.0, fonts can also be specified using the +fontconfig pattern syntax +described <a href="http://fontconfig.org/fontconfig-user.html">here</a>. +A fontconfig pattern string may be used in place of a FontProperties +class instance.<p> + +<h4>Font properties</h4> + Fonts are described by properties, and the font manager searches your system for the font that most closely matches the properties you choose. The 6 font properties used for font matching are given below with their @@ -56,7 +54,7 @@ for an example setting the default font property and changing it in the middle of the script. -<h4>font family</h4> +<h5>font family</h5> The font.family property has five values: 'serif' (e.g. Times), 'sans-serif' (e.g. Helvetica), 'cursive' (e.g. Zapf-Chancery), 'fantasy' @@ -72,58 +70,35 @@ font manager will try and find the best font no matter which platform you run on. -<h4>font style</h4> +<h5>font style</h5> The font.style property has three values: normal (or roman), italic or oblique. The oblique style will be used for italic, if it is not present. -<h4>font variant</h4> +<h5>font variant</h5> The font.variant property has two values: normal or small-caps. For TrueType fonts, which are scalable fonts, small-caps is equivalent to using a font size of 'smaller', or about 83% of the current font size. -<h4>font weight</h4> +<h5>font weight</h5> The font.weight property has effectively 13 values: normal, bold, bolder, lighter, 100, 200, 300, ..., 900. Normal is the same as 400, and bold is 700. bolder and lighter are relative values with respect to the current weight. -<h4>font stretch</h4> +<h5>font stretch</h5> The font.stretch property has 11 values: ultra-condensed, extra-condensed, condensed, semi-condensed, normal, semi-expanded, expanded, extra-expanded, ultra-expanded, wider, and narrower. This property is not currently implemented. -<h4>font size</h4> +<h5>font size</h5> The font.size property has 11 values: xx-small, x-small, small, medium, large, x-large, xx-large, larger, smaller, length (such as 12pt), and percentage. larger and smaller are relative values. percentage is not yet implemented. - - -<h3><a name=GTKFONTS>GTK</a></h3> - -The most recent versions of GTK (2.2.4.1 and later) and pygtk-2.0.0 -and later on linux have freetype font support built-in by default. If -you are using an older version, set the environment variable -<tt>GDK_USE_XFT</tt> - -<pre> -export GDK_USE_XFT=1 # bash and friends -</pre> - -or - -<pre> -setenv GDK_USE_XFT 1 # csh and friends -</pre> - -If you are using GTK under windows, see <a -href=http://www.async.com.br/faq/pygtk/index.py?req=show&file=faq21.011.htp>the -pygtk FAQ</a>. - <h3><a name=PSFONTS>Postscript</a></h3> <a Modified: trunk/htdocs/tutorial.html.template =================================================================== --- trunk/htdocs/tutorial.html.template 2007年11月30日 17:39:05 UTC (rev 4529) +++ trunk/htdocs/tutorial.html.template 2007年11月30日 19:31:05 UTC (rev 4530) @@ -27,11 +27,11 @@ ) - -@header@ -<h2>Using matplotlib</h2> +@header@ +<h2>Using matplotlib</h2> + If you are new to python, I recommend reading the <a href=http://docs.python.org/tut/tut.html>python tutorial</a> and <a @@ -190,7 +190,7 @@ There are several ways to set line properties <pre> # Use keyword args -plot(x, y, linewidth=2.0) +plot(x, y, linewidth=2.0) # Use the setter methods of the Line2D instance. plot returns a list # of lines; eg line1, line2 = plot(x1,y1,x2,x2). Below I have only @@ -202,7 +202,7 @@ # Use the set command. The example below uses matlab handle graphics # style command to set multiple properties on a list of lines. Set # works transparently with a list of objects or a single object -lines = plot(x1, y1, x2, y2) +lines = plot(x1, y1, x2, y2) setp(lines, color='r', linewidth=2.0) @@ -301,8 +301,8 @@ from pylab import * figure(1) # the first figure -plot([1,2,3]) -figure(2) # a second figure +plot([1,2,3]) +figure(2) # a second figure plot([4,5,6]) figure(1) # figure 1 current @@ -311,7 +311,7 @@ </pre> You can clear the current figure with <a -href=matplotlib.pyplot.html#-clf>clf</a> and the current axes with +href=matplotlib.pyplot.html#-clf>clf</a> and the current axes with <a href=matplotlib.pyplot.html#-cla>cla</a> @@ -448,8 +448,13 @@ Any text element can use math text. You need to use raw strings (preceed the quotes with an <tt>'r'</tt>), and surround the string -text with dollar signs, as in TeX. +text with dollar signs, as in TeX. Regular text and mathtext can be +interleaved within the same string.<p> +Mathtext can use the Bakoma Computer Modern fonts, STIX fonts or a +Unicode font that you provide. The mathtext font can be selected with +the customization variable "mathtext.fontset".<p> + <pre> # plain text title('alpha > beta') @@ -458,7 +463,7 @@ title(r'$\alpha > \beta$') </pre> -To make subscripts and superscripts use the '_' and '^' symbols, as in +To make subscripts and superscripts use the '_' and '^' symbols, as in <pre> title(r'$\alpha_i > \beta_i$') @@ -475,17 +480,29 @@ </pre> The default font is <i>italics</i> for mathematical symbols. To -change fonts, eg, to write "sin" in a roman font, enclose the text in +change fonts, eg, to write "sin" in a Roman font, enclose the text in a font command, as in <pre> -text(1,2, r's(t) = $\cal{A}\rm{sin}(2 \omega t)$') +text(1,2, r's(t) = $\mathcal{A}\mathrm{sin}(2 \omega t)$') </pre> +Even better, many commonly used function names that are typeset in a +Roman font have shortcuts. So the expression above could be written +as follows: + +<pre> +text(1,2, r's(t) = $\mathcal{A}\sin(2 \omega t)$') +</pre> + Here "s" and "t" are variable in italics font (default), "sin" is in -roman font, and the amplitude "A" is in caligraphy font. The font -choices are roman <tt>\rm</tt>, italics <tt>\it</tt>, caligraphy -<tt>\cal</tt>, and typewriter <tt>\tt</tt> <p> +Roman font, and the amplitude "A" is in caligraphy font. The font +choices are Roman <tt>\mathrm</tt>, italics <tt>\mathit</tt>, caligraphy +<tt>\mathcal</tt>, and typewriter <tt>\mathtt</tt>. If using the STIX +fonts, you also have the choice +of blackboard (double-struck) <tt>\mathbb</tt>, +circled <tt>\mathcircled</tt>, Fraktur <tt>\mathfrak</tt>, script +(cursive) <tt>\mathscr</tt> and sans-serif <tt>\mathsf</tt>.<p> The following accents are provided: <tt>\hat</tt>, <tt>\breve</tt>, <tt>\grave</tt>, <tt>\bar</tt>, <tt>\acute</tt>, <tt>\tilde</tt>, @@ -506,7 +523,7 @@ plot(t,s) title(r'$\alpha_i > \beta_i$', fontsize=20) text(1, -0.6, r'$\sum_{i=0}^\infty x_i$', fontsize=20) -text(0.6, 0.6, r'$\cal{A}\rm{sin}(2 \omega t)$', +text(0.6, 0.6, r'$\mathcal{A}\mathrm{sin}(2 \omega t)$', fontsize=20) xlabel('time (s)') ylabel('volts (mV)') @@ -526,7 +543,7 @@ to navigate through the data set. You can select either the "classic" or newfangled toolbar "toolbar2" in your <a href=matplotlibrc>matplotlibrc</a> file using the <tt>toolbar</tt> -setting. +setting. If you want to interact with very large data sets, matplotlib supports data clipping where the data is clipped with numerix before they are @@ -553,7 +570,7 @@ so you never have to move the mouse to pan the x-axis left and right. If you don't have a wheel mouse, buy one!<p> -<table> +<table> <tr><td><img src=tut/navcontrols.png></td></tr> <tr><td width=400> <i>The left widget that says 'All' on the controls on the bottom of the figure is a drop down menu used to select which axes the @@ -586,7 +603,7 @@ <b>The Pan/Zoom</b> button has two modes: pan and zoom. Click this toolbar button to activate this mode. Then put your mouse somewhere over an -axes. +axes. <ul> <li>Pan Mode: Press the left mouse button and hold it, dragging it to @@ -594,7 +611,7 @@ you pressed will be moved to the point where you released. If you press 'x' or 'y' while panning, the motion will be contrained to the x or y axis, respectively</li> - + <li>Zoom Mode: Press the right mouse button, dragging it to a new position. The x axis will be zoomed in proportionate to the rightward movement and zoomed out proportionate to the leftward @@ -626,7 +643,7 @@ PNG over JPG and TIFF, which is why I haven't worked too hard to include these other image formats in agg.<p> -<table> +<table> <tr><td><img src=tut/navcontrols2.png></td></tr> <tr><td width=400> <i>The new toolbar2</i> </td></tr> </table><br> @@ -687,13 +704,13 @@ plot([1,2,3]) glines = getp(gca(), 'gridlines') # make the gridlines blue and thicker -setp(glines, 'color', 'b', 'linewidth', 2) +setp(glines, 'color', 'b', 'linewidth', 2) -# get the patches.Rectangle instance increase +# get the patches.Rectangle instance increase # the linewidth of the rectangular axis frame -frame = gca(gca(), 'frame') -setp(frame, 'linewidth', 2) - +frame = gca(gca(), 'frame') +setp(frame, 'linewidth', 2) + </pre> @@ -770,7 +787,7 @@ print 'you clicked', event.x, event.y #register this function with the event handler -connect('button_press_event', click) +connect('button_press_event', click) </pre> Then whenever the user clicks anywhere on the figure canvas, your @@ -791,7 +808,7 @@ <tr><td>canvas</td><td>The FigureCanvas instance the event occured in</td></tr> <tr><td>key</td><td>The key press if any, eg 'a', 'b', '1'. Also records 'control and 'shift'</td></tr> -</table> +</table> You can connect to the following events: 'button_press_event', 'button_release_event', 'motion_notify_event'. @@ -868,7 +885,7 @@ <pre> # make up some random y values -s = rand(len(dates)) +s = rand(len(dates)) plot_date(dates, s) </pre> @@ -909,10 +926,10 @@ <pre> # every 5 years -years = YearLocator(5) +years = YearLocator(5) # every quarter -months = MonthLocator(range(3,13,3)) +months = MonthLocator(range(3,13,3)) </pre> The date tick locators MinuteLocator, HourLocator, DayLocator, @@ -939,7 +956,7 @@ </td></tr> </table><br> -<h4>timezones with pytz</h4> +<h4>timezones with pytz</h4> Timezone support is provided via the <a href=http://pytz.sourceforge.net/>pytz</a> module. This module This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
Revision: 4812 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=4812&view=rev Author: jdh2358 Date: 2008年01月08日 10:58:26 -0800 (2008年1月08日) Log Message: ----------- fixed perrys typos Modified Paths: -------------- trunk/htdocs/API_CHANGES trunk/htdocs/CHANGELOG trunk/htdocs/INSTALL trunk/htdocs/convert.py trunk/htdocs/credits.html.template trunk/htdocs/examples/coords_report.py trunk/htdocs/examples/dashpointlabel.py trunk/htdocs/examples/data_helper.py trunk/htdocs/examples/figimage_demo.py trunk/htdocs/examples/logo.py trunk/htdocs/examples/mri_demo.py trunk/htdocs/examples/poly_editor.py trunk/htdocs/examples/text_themes.py trunk/htdocs/goals.txt trunk/htdocs/hthelpers.py trunk/htdocs/installing.html.template trunk/htdocs/license.html.template trunk/htdocs/make.py trunk/htdocs/matplotlib.axes.html.template trunk/htdocs/matplotlib.backend_bases.html.template trunk/htdocs/matplotlib.backends.backend_agg.html.template trunk/htdocs/matplotlib.backends.backend_cairo.html.template trunk/htdocs/matplotlib.backends.backend_gtk.html.template trunk/htdocs/matplotlib.backends.backend_gtkagg.html.template trunk/htdocs/matplotlib.backends.backend_gtkcairo.html.template trunk/htdocs/matplotlib.backends.backend_ps.html.template trunk/htdocs/matplotlib.backends.backend_qt.html.template trunk/htdocs/matplotlib.backends.backend_qtagg.html.template trunk/htdocs/matplotlib.backends.backend_svg.html.template trunk/htdocs/matplotlib.backends.backend_tkagg.html.template trunk/htdocs/matplotlib.backends.backend_wx.html.template trunk/htdocs/matplotlib.backends.backend_wxagg.html.template trunk/htdocs/matplotlib.cbook.html.template trunk/htdocs/matplotlib.cm.html.template trunk/htdocs/matplotlib.colors.html.template trunk/htdocs/matplotlib.dates.html.template trunk/htdocs/matplotlib.figure.html.template trunk/htdocs/matplotlib.finance.html.template trunk/htdocs/matplotlib.font_manager.html.template trunk/htdocs/matplotlib.image.html.template trunk/htdocs/matplotlib.legend.html.template trunk/htdocs/matplotlib.lines.html.template trunk/htdocs/matplotlib.mathtext.html trunk/htdocs/matplotlib.mathtext.html.template trunk/htdocs/matplotlib.mlab.html.template trunk/htdocs/matplotlib.numerix.html.template trunk/htdocs/matplotlib.patches.html.template trunk/htdocs/matplotlib.pylab.html.template trunk/htdocs/matplotlib.pyplot.html.template trunk/htdocs/matplotlib.rcsetup.html.template trunk/htdocs/matplotlib.table.html.template trunk/htdocs/matplotlib.texmanager.html.template trunk/htdocs/matplotlib.text.html.template trunk/htdocs/matplotlib.toolkits.basemap.basemap.html.template trunk/htdocs/matplotlib.units.html.template trunk/htdocs/matplotlibrc trunk/htdocs/whats_new.html.template Modified: trunk/htdocs/API_CHANGES =================================================================== --- trunk/htdocs/API_CHANGES 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/API_CHANGES 2008年01月08日 18:58:26 UTC (rev 4812) @@ -1,3 +1,20 @@ +0.91.2 Released + + For csv2rec, checkrows=0 is the new default indicating all rows + will be checked for type inference + + A warning is issued when an image is drawn on log-scaled + axes, since it will not log-scale the image data. + + Moved rec2gtk to matplotlib.toolkits.gtktools + + Moved rec2excel to matplotlib.toolkits.exceltools + + Removed, dead/experimental ExampleInfo, Namespace and Importer + code from matplotlib/__init__.py + +0.91.1 Released + 0.91.0 Released Changed cbook.is_file_like to cbook.is_writable_file_like and @@ -2,3 +19,3 @@ corrected behavior. - + Added ax kwarg to pyplot.colorbar and Figure.colorbar so that Modified: trunk/htdocs/CHANGELOG =================================================================== --- trunk/htdocs/CHANGELOG 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/CHANGELOG 2008年01月08日 18:58:26 UTC (rev 4812) @@ -1,4 +1,53 @@ =============================================================== +2008年01月06日 Released 0.91.2 at revision 4802 + +2007年12月26日 Reduce too-late use of matplotlib.use() to a warning + instead of an exception, for backwards compatibility - EF + +2007年12月25日 Fix bug in errorbar, identified by Noriko Minakawa - EF + +2007年12月25日 Changed masked array importing to work with the upcoming + numpy 1.05 (now the maskedarray branch) as well as with + earlier versions. - EF + +2007年12月16日 rec2csv saves doubles without losing precision. Also, it + does not close filehandles passed in open. - JDH,ADS + +2007年12月13日 Moved rec2gtk to matplotlib.toolkits.gtktools and rec2excel + to matplotlib.toolkits.exceltools - JDH + +2007年12月12日 Support alpha-blended text in the Agg and Svg backends - + MGD + +2007年12月10日 Fix SVG text rendering bug. - MGD + +2007年12月10日 Increase accuracy of circle and ellipse drawing by using an + 8-piece bezier approximation, rather than a 4-piece one. + Fix PDF, SVG and Cairo backends so they can draw paths + (meaning ellipses as well). - MGD + +2007年12月07日 Issue a warning when drawing an image on a non-linear axis. - MGD + +2007年12月06日 let widgets.Cursor initialize to the lower x and y bounds + rather than 0,0, which can cause havoc for dates and other + transforms - DSD + +2007年12月06日 updated references to mpl data directories for py2exe - DSD + +2007年12月06日 fixed a bug in rcsetup, see bug 1845057 - DSD + +2007年12月05日 Fix how fonts are cached to avoid loading the same one multiple times. + (This was a regression since 0.90 caused by the refactoring of + font_manager.py) - MGD + +2007年12月05日 Support arbitrary rotation of usetex text in Agg backend. - MGD + +2007年12月04日 Support '|' as a character in mathtext - MGD + +=============================================================== +2007年11月27日 Released 0.91.1 at revision 4517 +たす +たす=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ=わ 2007年11月27日 Released 0.91.0 at revision 4478 2007年11月13日 All backends now support writing to a file-like object, not @@ -6,8 +55,8 @@ object in place of a file path. - MGD 2007年11月13日 Improved the default backend selection at build time: - SVG -> Agg -> TkAgg -> WXAgg -> GTK -> GTKAgg. The last usable - backend in this progression will be chosen in the default + SVG -> Agg -> TkAgg -> WXAgg -> GTK -> GTKAgg. The last usable + backend in this progression will be chosen in the default config file. If a backend is defined in setup.cfg, that will be the default backend - DSD @@ -17,41 +66,41 @@ 2007年11月12日 Exposed all the build options in setup.cfg. These options are read into a dict called "options" by setupext.py. Also, added "-mpl" tags to the version strings for packages provided by - matplotlib. Versions provided by mpl will be identified and + matplotlib. Versions provided by mpl will be identified and updated on subsequent installs - DSD 2007年11月12日 Added support for STIX fonts. A new rcParam, - mathtext.fontset, can be used to choose between: - + mathtext.fontset, can be used to choose between: + 'cm': - The TeX/LaTeX Computer Modern fonts + The TeX/LaTeX Computer Modern fonts - 'stix': + 'stix': The STIX fonts (see stixfonts.org) - 'stixsans': - The STIX fonts, using sans-serif glyphs by default + 'stixsans': + The STIX fonts, using sans-serif glyphs by default - 'custom': + 'custom': A generic Unicode font, in which case the mathtext font must be specified using mathtext.bf, mathtext.it, mathtext.sf etc. - + Added a new example, stix_fonts_demo.py to show how to access different fonts and unusual symbols. - + - MGD -2007年11月12日 Options to disable building backend extension modules moved +2007年11月12日 Options to disable building backend extension modules moved from setup.py to setup.cfg - DSD 2007年11月09日 Applied Martin Teichmann's patch 1828813: a QPainter is used in - paintEvent, which has to be destroyed using the method end(). If - matplotlib raises an exception before the call to end - and it - does if you feed it with bad data - this method end() is never + paintEvent, which has to be destroyed using the method end(). If + matplotlib raises an exception before the call to end - and it + does if you feed it with bad data - this method end() is never called and Qt4 will start spitting error messages -2007年11月09日 Moved pyparsing back into matplotlib namespace. Don't use +2007年11月09日 Moved pyparsing back into matplotlib namespace. Don't use system pyparsing, API is too variable from one release to the next - DSD Modified: trunk/htdocs/INSTALL =================================================================== --- trunk/htdocs/INSTALL 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/INSTALL 2008年01月08日 18:58:26 UTC (rev 4812) @@ -1,42 +1,42 @@ + INTRODUCTION - matplotlib requires at a minimum python 2.2+, Numeric or numarray - and freetype. To get the most out of matplotlib, you will want to - build some of the optional GUI and image extensions, discussed - below. Matplotlib is known to work on linux, unix, win32 and OS X + matplotlib requires at a minimum python 2.3, numpy, libpng and + freetype. To get the most out of matplotlib, you will want to build + some of the optional GUI and image extensions, discussed below. + Matplotlib is known to work on linux, unix, win32 and OS X platforms. There are two kinds of matplotlib backends: vector based and raster - based. The vector based backends, SVG and PS, produce ASCII text - output files *.svg and *.ps. The core raster based renderer is the - http://antigrain.com (agg) backend. This is a high quality 2D - library that supports fast antialiasing, alpha blending and much - more. If you want to produce PNGs or GUI images that support all of - matplotlib's features, you should compile matplotlib with agg - support and use one of the GUI agg backends: GTKAgg, WXAgg, TkAgg or - FLTKAgg. + based. The vector based backends, SVG, PDF and PS, produce ASCII + text output files *.svg, *.pdf and *.ps. The core raster based + renderer is the http://antigrain.com (agg) backend. This is a high + quality 2D library that supports fast antialiasing, alpha blending + and much more. If you want to produce PNGs or GUI images that + support all of matplotlib's features, you should compile matplotlib + with agg support and use one of the GUI agg backends: GTKAgg, WXAgg, + TkAgg or FLTKAgg. COMPILING - You will need to have recent versions of freetype (>= 2.1.7), libpng - and zlib installed on your system. If you are using a package - manager, also make sure the devel versions of these packages are - also installed (eg freetype-devel). + You will need to have recent versions of freetype, libpng and zlib + installed on your system. If you are using a package manager, also + make sure the devel versions of these packages are also installed + (eg freetype-devel). - The top of setup.py contains some flags controlling which backends - will be built. If you want to use a GUI backend, you will need - either Tkinter, pygtk or wxpython installed on your system, from src - or from a package manager including the devel packages. You can - choose which backends to enable by setting the flags in setup.py, - but the 'auto' flags will work in most cases, as matplotlib tries to - find a GUI and build the backend acccordingly. If you know you - don't want a particular backend or extension, you can set that flag - to False. + matplotlib ships with a setup.cfg.template which you can use to + customize the build process. Copy it to setup.cfg if you need to + customize something. See that files for details of the parameters + you can set. - As discussed above, most users will want to set 'BUILD_AGG = 1' and - one or more of the GUI backends to True. Exceptions to this are if - you know you don't need a GUI (eg a web server) or you only want to - produce vector graphics. + If you want to use a GUI backend, you will need either Tkinter, + pygtk , wxPython or Qt installed on your system, from src or from a + package manager including the devel packages. You can choose which + backends to enable by setting the flags in setup.cfg, but the default + is to automatically detect your installed GUIs and build support for + them. If you later find that you did not have a GUI toolkit like + pygtk installed when you built matplotlib, but now want it, you will + need to install the toolkit and rebuild matplotlib. If you have installed prerequisites to nonstandard places and need to inform matplotlib where they are, edit setupext.py an add the @@ -45,41 +45,29 @@ /some/path/include/somheader.h, put /some/path in the basedir list for your platform. - matplotlib works with with Numeric or numarray. At compile time, - setup.py will look for both packages and compile the appropriate - extensions into matplotlib. At runtime, the correct extension code - will be chosen based on your numerix setting in matplotlibrc. If - you want to be able to use either Numeric or numarray efficiently - with matplotlib, it is important that you have *both* present and in - your PYTHONPATH when you compile matplotlib. - Note that if you install matplotlib anywhere other than the default - location, you will need to set the MATPLOTLIBDATA environment - variable to point to the install base dir. - Once you have everything above set to your liking, just do the usual thing python setup.py build python setup.py install - + WINDOWS If you don't already have python installed, you may want to consider - using the enthought edition of python, which has (old) scipy, Numeric, and + using the enthought edition of python, which has scipy, numpy, and wxpython, plus a lot of other goodies, preinstalled - http://www.enthought.com/python . With the enthought edition of python + matplotlib installer, the following backends should work - out of the box: agg, wx, wxagg, tkagg, ps and svg. + out of the box: agg, wx, wxagg, tkagg, ps, pdf and svg. For standard python installations, you will also need to install - either numpy, Numeric or numarray in addition to the matplotlib installer. - With a standard python + Numeric/numarray + matplotlib, the - following backends should work on windows: agg, tkagg, ps, svg. If - you want others, eg a wx, wxagg, gtk or gtkagg, you'll need to - install the requisite GUI toolkits. This is fairly easy, as both - wxpython and pygtk come with windows friendly installers. The - latter includes an additional requirement of the GTK runtime. + either numpy, in addition to the matplotlib installer. On some + systems you will also need to download msvcp71.dll library, which + you can download from + http://www.dll-files.com/dllindex/dll-files.shtml?msvcp71 or other + sites. You will need to unzip the archive and drag the dll into + c:\windows\system32 All of the GUI backends run on windows, but TkAgg is probably the best for interactive use from the standard python shell or ipython. @@ -106,7 +94,7 @@ To build all the backends on a binary linux distro such as redhat, you need to install a number of the devel libs (and whatever dependencies they require), I suggest - + matplotlib core: zlib, zlib-devel, libpng, libpng-devel, freetype, freetype-devel, freetype-utils @@ -117,24 +105,15 @@ DEBIAN - Vittorio Palmisano <re...@em...> maintails the debian - packages at http://mentors.debian.net + matplotlib is part of debian (and ubuntu) so you shoule be able to + apt-get install it. - - * add this lines to your /etc/apt/sources.list: - deb http://anakonda.altervista.org/debian packages/ - deb-src http://anakonda.altervista.org/debian sources/ - - * then run: - # apt-get update - # apt-get install python-matplotlib python-matplotlib-doc - FREEBSD http://www.freshports.org/math/py-matplotlib/ Gentoo - + http://www.gentoo-portage.com/dev-python/matplotlib OS X Modified: trunk/htdocs/convert.py =================================================================== --- trunk/htdocs/convert.py 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/convert.py 2008年01月08日 18:58:26 UTC (rev 4812) @@ -18,18 +18,19 @@ return sh.getvalue() class NewsBox: - def __init__(self, body, title='News Flash'): + def __init__(self, body, title='News Flash', bgcolor='red'): self.body = body self.title = title - + self.bgcolor = bgcolor + def format_header(self): return """ - <tr><td bgcolor="red" align="left"> + <tr><td bgcolor="%s" align="left"> <font class="tableheading"> <b>%s</b> </font> </td></tr> - """%self.title + """%(self.bgcolor, self.title) def __repr__(self): s = '<table width=100% border=1 cellpadding=1 ' +\ @@ -186,20 +187,26 @@ # re-add news to the params dict 'tables' entry below for news -news1 = NewsBox("""matplotlib <a -href="http://sourceforge.net/project/showfiles.php?group_id=80706&package_id=82474">0.91.0</a> +news1= NewsBox("""We have recetly merged significant changes in the internal matplotlib transformation infrastructure into the main matplotlib codebase. While this will not affect typical pylab users, some users of the API and transformation code will to make some code changes to work with the new transformations. Please see <a href=MIGRATION.txt>migration</a> and <a href=API_CHANGES>API_CHANGES</a> for a summary of the migration path and changes in the API, and let us know on the <a href=http://sourceforge.net/mail/?group_id=80706>mailing lists</a> if you are experiecing problems""", title='Major changes in matplotlib svn') + + +news2 = NewsBox("""Help support matplotlib development by <a href=http://sourceforge.net/project/project_donations.php?group_id=80706>donating</a> to fund developer sprints and other matplotlib development costs.""", title='Donate') + + +news3 = NewsBox("""matplotlib <a +href=http://sourceforge.net/project/platformdownload.php?group_id=80706>0.91.2</a> is out. See <a href=whats_new.html>what's new</a> for a summary of new features. """, title='New release') table1 = LinkBox(header='Matplotlib', links=( ('Home', 'http://matplotlib.sourceforge.net'), - #('Donate', 'donations.html'), ("What's New", 'whats_new.html'), ('Download', 'http://sourceforge.net/projects/matplotlib'), ('Installing', 'installing.html'), ('Screenshots', 'screenshots.html'), ('Examples (zip)', 'matplotlib_examples_%s.zip'%matplotlib.__version__), ('Mailing lists', 'http://sourceforge.net/mail/?group_id=80706'), + ('Donate', 'http://sourceforge.net/project/project_donations.php?group_id=80706'), )) table2 = LinkBox(header='Documentation', links=( @@ -225,7 +232,7 @@ params = { 'myemail' : '<a href=mailto:jdh...@ac...> (jdh...@ac...)</a>', - 'tables' : (news1, table1, table2, table3), + 'tables' : (news1, news2, news3, table1, table2, table3), 'default_table' : 'border=1 cellpadding=3 cellspacing=2', } Modified: trunk/htdocs/credits.html.template =================================================================== --- trunk/htdocs/credits.html.template 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/credits.html.template 2008年01月08日 18:58:26 UTC (rev 4812) @@ -78,9 +78,11 @@ <li>Fernando Perez has provided numerous bug reports and patches for cleaning up backend imports and expanding pylab functionality, and - provided matplotlib support in the pylab mode for <a - href=http://ipython.scipy.org>ipython</a>. He also provided the <a - href=matplotlib.pyplot.html#-matshow>matshow</a> command.</li> + provided matplotlib support in the pylab mode for + <a href=http://ipython.scipy.org>ipython</a>. He also provided + the <a href=matplotlib.pyplot.html#-matshow>matshow</a> command, and + wrote TConfig, which is the basis for the traited mpl + configuration. </li> <li>Andrew Dalke of Dalke Scientific Software contributed the strftime formatting code to handle years earlier than 1900</li> @@ -96,7 +98,7 @@ shared axes support that underlies ganged plots and multiscale plots</li> - <li>Jeffrey Whittaker at + <li>Jeffrey Whitaker at <a href=http://www.boulder.noaa.gov/>NOAA</a> wrote the <a href=toolkits.html>basemap</a> tookit</li> @@ -104,6 +106,8 @@ <a href=http://www.jpl.nasa.gov>JPL</a> collaborated on the QtAgg backend</li> + <li>James Amundson did the initial work porting the qt backend to qt4</li> + <li>Eric Firing has contributed significantly to contouring, masked array, pcolor, image and quiver support, in addition to ongoing support and enhancements in performance, design and code quality in @@ -127,6 +131,10 @@ <li>Jouni K. Seppaenen wrote the PDF backend</li> + <li> Paul Kienzle improved the picking infrastruture for interactive plots, + and with Alex Mont contributed fast rendering code for quadrilateral + meshes.</li> + <li>Michael Droettboom supported by <a href=http://www.stsci.edu/>STScI</a> wrote the enhanced mathtext support, implementing Knuth's box layout algorithms, saving to Modified: trunk/htdocs/examples/coords_report.py =================================================================== --- trunk/htdocs/examples/coords_report.py 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/examples/coords_report.py 2008年01月08日 18:58:26 UTC (rev 4812) @@ -1,7 +1,6 @@ #!/usr/bin/env python -# override the default reporting of coords (coords reporting not -# implemented yet on wx*) +# override the default reporting of coords from pylab import * Modified: trunk/htdocs/examples/dashpointlabel.py =================================================================== --- trunk/htdocs/examples/dashpointlabel.py 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/examples/dashpointlabel.py 2008年01月08日 18:58:26 UTC (rev 4812) @@ -1,4 +1,4 @@ -from matplotlib import pylab +import pylab DATA = ((1, 3), (2, 4), @@ -15,26 +15,27 @@ (1, 20, 30, 60, 10), ) -def test_dashpointlabel(save=False): - pylab.clf() - (x,y) = zip(*DATA) - pylab.plot(x, y, marker='o') - for i in xrange(len(DATA)): - (x,y) = DATA[i] - (dd, dl, r, dr, dp) = dash_style[i] - pylab.text(x, y, str((x,y)), withdash=True, - dashdirection=dd, - dashlength=dl, - rotation=r, - dashrotation=dr, - dashpush=dp, - ) - axis = pylab.gca() - axis.set_xlim((0.0, 5.0)) - axis.set_ylim((0.0, 5.0)) - if save: - pylab.savefig('dashpointlabel') - pylab.show() +fig = pylab.figure() +ax = fig.add_subplot(111) -if __name__ == '__main__': - test_dashpointlabel() + +(x,y) = zip(*DATA) +ax.plot(x, y, marker='o') +for i in xrange(len(DATA)): + (x,y) = DATA[i] + (dd, dl, r, dr, dp) = dash_style[i] + #print 'dashlen call', dl + t = ax.text(x, y, str((x,y)), withdash=True, + dashdirection=dd, + dashlength=dl, + rotation=r, + dashrotation=dr, + dashpush=dp, + ) + +ax.set_xlim((0.0, 5.0)) +ax.set_ylim((0.0, 5.0)) +#if save: +# pylab.savefig('dashpointlabel') +pylab.show() + Modified: trunk/htdocs/examples/data_helper.py =================================================================== --- trunk/htdocs/examples/data_helper.py 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/examples/data_helper.py 2008年01月08日 18:58:26 UTC (rev 4812) @@ -15,7 +15,7 @@ M1 = resize(M1, (M1.shape[0]/2,2) ) M2 = fromstring( file('data/%s.dat' % ticker2, 'rb').read(), '<d') - M2 = resize(M1, (M2.shape[0]/2,2) ) + M2 = resize(M2, (M2.shape[0]/2,2) ) d1, p1 = M1[:,0], M1[:,1] d2, p2 = M2[:,0], M2[:,1] Modified: trunk/htdocs/examples/figimage_demo.py =================================================================== --- trunk/htdocs/examples/figimage_demo.py 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/examples/figimage_demo.py 2008年01月08日 18:58:26 UTC (rev 4812) @@ -13,7 +13,7 @@ im1 = figimage(Z, xo=50, yo=0) im2 = figimage(Z, xo=100, yo=100, alpha=.8) #gray() # overrides current and sets default -#savefig('figimage_demo') +savefig('figimage_demo') show() Modified: trunk/htdocs/examples/logo.py =================================================================== --- trunk/htdocs/examples/logo.py 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/examples/logo.py 2008年01月08日 18:58:26 UTC (rev 4812) @@ -5,7 +5,7 @@ # convert data to mV x = 1000*0.1*fromstring( - file('data/membrane.dat', 'rb').read(), Float32) + file('data/membrane.dat', 'rb').read(), float32) # 0.0005 is the sample interval t = 0.0005*arange(len(x)) figure(1, figsize=(7,1), dpi=100) Modified: trunk/htdocs/examples/mri_demo.py =================================================================== --- trunk/htdocs/examples/mri_demo.py 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/examples/mri_demo.py 2008年01月08日 18:58:26 UTC (rev 4812) @@ -3,7 +3,7 @@ # data are 256x256 16 bit integers dfile = 'data/s1045.ima' -im = fromstring(file(dfile, 'rb').read(), UInt16).astype(Float) +im = fromstring(file(dfile, 'rb').read(), uint16).astype(float) im.shape = 256, 256 #imshow(im, ColormapJet(256)) Modified: trunk/htdocs/examples/poly_editor.py =================================================================== --- trunk/htdocs/examples/poly_editor.py 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/examples/poly_editor.py 2008年01月08日 18:58:26 UTC (rev 4812) @@ -9,8 +9,6 @@ from matplotlib.mlab import dist_point_to_segment - - class PolygonInteractor: """ An polygon editor. @@ -73,7 +71,7 @@ # display coords xt, yt = self.poly.get_transform().numerix_x_y(x, y) d = sqrt((xt-event.x)**2 + (yt-event.y)**2) - indseq = nonzero(equal(d, amin(d))) + indseq = nonzero(equal(d, amin(d)))[0] ind = indseq[0] if d[ind]>=self.epsilon: @@ -128,6 +126,7 @@ if event.inaxes is None: return if event.button != 1: return x,y = event.xdata, event.ydata + self.poly.xy[self._ind] = x,y self.line.set_data(zip(*self.poly.xy)) @@ -160,7 +159,7 @@ ax.add_patch(poly) p = PolygonInteractor( ax, poly) -ax.add_line(p.line) +#ax.add_line(p.line) ax.set_title('Click and drag a point to move it') ax.set_xlim((-2,2)) ax.set_ylim((-2,2)) Modified: trunk/htdocs/examples/text_themes.py =================================================================== --- trunk/htdocs/examples/text_themes.py 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/examples/text_themes.py 2008年01月08日 18:58:26 UTC (rev 4812) @@ -17,7 +17,7 @@ plot(t1, f(t1), 'bo', t2, f(t2), 'k') title('Damped exponential decay', font, size='large', color='r') -text(2, 0.65, 'cos(2 pi t) exp(-t)', font, color='k', family='monospace' ) +text(2, 0.65, r'$\cos(2 \pi t) \exp(-t)$', color='k') xlabel('time (s)', font, style='italic') ylabel('voltage (mV)', font) Modified: trunk/htdocs/goals.txt =================================================================== --- trunk/htdocs/goals.txt 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/goals.txt 2008年01月08日 18:58:26 UTC (rev 4812) @@ -423,11 +423,11 @@ ******************* PDF backend -not started +mostly complete ******************* SVG backend -almost done +mostly complete Jared Wahlstrand wrote the SVG backend. As of <a href="whats_new.html#0.61-svg_fixes">matplotlib-0.91</a> svg has fast Modified: trunk/htdocs/hthelpers.py =================================================================== --- trunk/htdocs/hthelpers.py 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/hthelpers.py 2008年01月08日 18:58:26 UTC (rev 4812) @@ -8,13 +8,10 @@ 'matplotlib.backends.backend_cairo', 'matplotlib.backends.backend_fltkagg', 'matplotlib.backends.backend_gtkcairo', - 'matplotlib.backends.backend_gd', 'matplotlib.backends.backend_gtk', 'matplotlib.backends.backend_gtkagg', - 'matplotlib.backends.backend_paint', 'matplotlib.backends.backend_ps', 'matplotlib.backends.backend_svg', - 'matplotlib.backends.backend_emf', 'matplotlib.backends.backend_template', 'matplotlib.backends.backend_tkagg', 'matplotlib.backends.backend_qt', Modified: trunk/htdocs/installing.html.template =================================================================== --- trunk/htdocs/installing.html.template 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/installing.html.template 2008年01月08日 18:58:26 UTC (rev 4812) @@ -31,10 +31,27 @@ make sure the devel versions of these packages are also installed (eg freetype-devel).<p> -matplotlib ships with a site.cfg.template file which you should copy -to site.cfg and edit if you want to configure the build process, such -as which user interfaces to build. + matplotlib ships with a setup.cfg.template which you can use to + customize the build process. Copy it to setup.cfg if you need to + customize something. See that files for details of the parameters + you can set.<p> + If you want to use a GUI backend, you will need either Tkinter, + pygtk , wxPython or Qt installed on your system, from src or from a + package manager including the devel packages. You can choose which + backends to enable by setting the flags in setup.cfg, but the default + is to automatically detect your installed GUIs and build support for + them. If you later find that you did not have a GUI toolkit like + pygtk installed when you built matplotlib, but now want it, you will + need to install the toolkit and rebuild matplotlib.<p> + + If you have installed prerequisites to nonstandard places and need + to inform matplotlib where they are, edit setupext.py an add the + base dirs to the 'basedir' dictionary entry for your sys.platform. + Eg, if the header to some required library is in + /some/path/include/somheader.h, put /some/path in the basedir list + for your platform.<p> + <pre> python setup.py build python setup.py install @@ -50,18 +67,22 @@ wxpython, plus a lot of other goodies, preinstalled - <a href=http://www.enthought.com/python> enthought python</a> . With the enthought edition of python + matplotlib installer, the following -backends should work out of the box: agg, wx, wxagg, tkagg, ps and -svg.<p> +backends should work out of the box: agg, wx, wxagg, tkagg, ps, pdf +and svg.<p> For standard python installations, you will also need to install numpy -in addition to the matplotlib installer. With a standard python + -numpy + matplotlib, the following backends should work on windows: -agg, tkagg, ps, svg. If you want others, eg a wx, wxagg, gtk or -gtkagg, you'll need to install the requisite GUI toolkits, as -described on <a href=backends.html>backends</a>. This is fairly easy, -as both wxpython and pygtk come with windows friendly installers. The -latter includes an additional requirement of the GTK runtime.<p> +in addition to the matplotlib installer. On some systems, you will +also need to download +<a href=http://www.dll-files.com/dllindex/dll-files.shtml?msvcp71>msvcp71.dll</a> +library. You will need to unzip the archive and drag the dll into +c:\windows\system32 + +With a standard python + numpy + matplotlib, the following backends +should work on windows: agg, tkagg, ps, pdf, an svg. If you want +others, eg a wx, wxagg, gtk or gtkagg, you'll need to install the +requisite GUI toolkits, such as wxPython. + All of the GUI backends run on windows, but TkAgg is probably the best for interactive use from the standard python shell or ipython. The windows installer (*.exe or *.egg) on the download page contains all the code @@ -83,14 +104,18 @@ <h3><a name=osx>OS X</a></h3> -All of the backends run on OS X. Chris Barker has built a binary -package (fink users see below) for matplotlib which is hosted on <a -href=http://pythonmac.org/packages>pythonmac</a>, and works with Agg, -Wx and Tk. +All of the backends run on OS X. We build universal binary eggs for +OS X that should work on Tiger (10.4) and Leopard (10.5) for both +intel and PPC architectures, which you can grab +<a href=http://sourceforge.net/project/platformdownload.php?group_id=80706>here</a>. +If you are interested in building your own binaries, you can read the +build notes +<a href=http://ipython.scipy.org/moin/MatplotlibOSXBuildNotes>here</a>. +If you want to build from svn yourself on OS X, make sure you read the +compiling instructions above. There is a wiki page that covers build +matplotlib (and other scientific python packages) from svn at +<a href=http://ipython.scipy.org/moin/Py4Science/InstallationOSX>InstallationOSX</a> <p> -If you want to compile yourself on OS X, make sure you read the -compiling instructions above. There is a wiki page that covers build matplotlib (and other scientific python packages) from svn at <a href=http://ipython.scipy.org/moin/Py4Science/InstallationOSX>InstallationOSX</a> <p> - Note when running a GUI backend in OSX, you should launch your programs with pythonw rather than python, or you may get nonresponsive GUIs. Modified: trunk/htdocs/license.html.template =================================================================== --- trunk/htdocs/license.html.template 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/license.html.template 2008年01月08日 18:58:26 UTC (rev 4812) @@ -6,7 +6,7 @@ <pre> -LICENSE AGREEMENT FOR MATPLOTLIB 0.91.0 +LICENSE AGREEMENT FOR MATPLOTLIB 0.91.2svn -------------------------------------- 1. This LICENSE AGREEMENT is between the John D. Hunter ("JDH"), and the @@ -17,30 +17,30 @@ 2. Subject to the terms and conditions of this License Agreement, JDH hereby grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, analyze, test, perform and/or display publicly, prepare -derivative works, distribute, and otherwise use matplotlib 0.91.0 +derivative works, distribute, and otherwise use matplotlib 0.91.2svn alone or in any derivative version, provided, however, that JDH's License Agreement and JDH's notice of copyright, i.e., "Copyright (c) 2002-2004 John D. Hunter; All Rights Reserved" are retained in -matplotlib 0.91.0 alone or in any derivative version prepared by +matplotlib 0.91.2svn alone or in any derivative version prepared by Licensee. 3. In the event Licensee prepares a derivative work that is based on or -incorporates matplotlib 0.91.0 or any part thereof, and wants to +incorporates matplotlib 0.91.2svn or any part thereof, and wants to make the derivative work available to others as provided herein, then Licensee hereby agrees to include in any such work a brief summary of -the changes made to matplotlib 0.91.0. +the changes made to matplotlib 0.91.2svn. -4. JDH is making matplotlib 0.91.0 available to Licensee on an "AS +4. JDH is making matplotlib 0.91.2svn available to Licensee on an "AS IS" basis. JDH MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, JDH MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS -FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF MATPLOTLIB 0.91.0 +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF MATPLOTLIB 0.91.2svn WILL NOT INFRINGE ANY THIRD PARTY RIGHTS. 5. JDH SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF MATPLOTLIB -0.91.0 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR +0.91.2svn FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING -MATPLOTLIB 0.91.0, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF +MATPLOTLIB 0.91.2svn, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. 6. This License Agreement will automatically terminate upon a material @@ -52,7 +52,7 @@ trademarks or trade name in a trademark sense to endorse or promote products or services of Licensee, or any third party. -8. By copying, installing or otherwise using matplotlib 0.91.0, +8. By copying, installing or otherwise using matplotlib 0.91.2svn, Licensee agrees to be bound by the terms and conditions of this License Agreement. Modified: trunk/htdocs/make.py =================================================================== --- trunk/htdocs/make.py 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/make.py 2008年01月08日 18:58:26 UTC (rev 4812) @@ -36,7 +36,7 @@ os.system('cp ../users_guide/users_guide.pdf users_guide_%s.pdf'%matplotlib.__version__) -filenames = ( 'INSTALL', 'CHANGELOG', 'API_CHANGES',) +filenames = ( 'INSTALL', 'CHANGELOG', 'API_CHANGES', 'MIGRATION.txt') for fname in filenames: oldname = os.path.join(MPL_SRC,fname) print 'copying %s to %s' % (oldname, fname) @@ -56,13 +56,13 @@ #os.system('cd tut; python runall.py') #print 'Running process_docs' -#os.system('python process_docs.py') +os.system('python process_docs.py') print 'Running convert' os.system('python convert.py') print 'Building archive' version = matplotlib.__version__ -tarcommand = 'tar cfz site.tar.gz *.html api.pdf users_guide_%(version)s.pdf matplotlib_examples_%(version)s.zip screenshots tut examples gd matplotlibrc CHANGELOG NUMARRAY_ISSUES API_CHANGES set_begone.py -X exclude.txt'%locals() +tarcommand = 'tar cfz site.tar.gz *.html api.pdf users_guide_%(version)s.pdf matplotlib_examples_%(version)s.zip screenshots tut examples matplotlibrc CHANGELOG API_CHANGES MIGRATION.txt set_begone.py -X exclude.txt'%locals() print tarcommand os.system(tarcommand) Modified: trunk/htdocs/matplotlib.axes.html.template =================================================================== --- trunk/htdocs/matplotlib.axes.html.template 2008年01月08日 18:57:23 UTC (rev 4811) +++ trunk/htdocs/matplotlib.axes.html.template 2008年01月08日 18:58:26 UTC (rev 4812) @@ -193,6 +193,7 @@ 'axes pixels' : pixels from lower left corner of axes<br> 'axes fraction' : 0,1 is lower left of axes and 1,1 is upper right<br> 'data' : use the coordinate system of the object being annotated (default)<br> + 'offset points' : Specify an offset (in points) from the xy value<br> 'polar' : you can specify theta, r for the annotation, even<br> in cartesian plots. Note that if you<br> are using a polar axes, you do not need<br> @@ -752,7 +753,7 @@ <dl><dt><a name="Axes-clear"><strong>clear</strong></a>(self)</dt><dd><tt>clear the axes</tt></dd></dl> -<dl><dt><a name="Axes-cohere"><strong>cohere</strong></a>(self, x, y, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x860b3e4></font>, window<font color="#909090">=<function window_hanning at 0x860b294></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>COHERE(x, y, NFFT=256, Fs=2, Fc=0, detrend = mlab.detrend_none,<br> +<dl><dt><a name="Axes-cohere"><strong>cohere</strong></a>(self, x, y, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x868817c></font>, window<font color="#909090">=<function window_hanning at 0x868802c></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>COHERE(x, y, NFFT=256, Fs=2, Fc=0, detrend = mlab.detrend_none,<br> window = mlab.window_hanning, noverlap=0, **kwargs)<br> <br> cohere the coherence between x and y. Coherence is the normalized<br> @@ -1045,7 +1046,7 @@ removed. Chunking introduces artifacts at the chunk<br> boundaries unless antialiased = False</tt></dd></dl> -<dl><dt><a name="Axes-csd"><strong>csd</strong></a>(self, x, y, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x860b3e4></font>, window<font color="#909090">=<function window_hanning at 0x860b294></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>CSD(x, y, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,<br> +<dl><dt><a name="Axes-csd"><strong>csd</strong></a>(self, x, y, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x868817c></font>, window<font color="#909090">=<function window_hanning at 0x868802c></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>CSD(x, y, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,<br> window=window_hanning, noverlap=0, **kwargs)<br> <br> The cross spectral density Pxy by Welches average periodogram method.<br> @@ -2195,7 +2196,7 @@ See dates for helper functions date2num, num2date<br> and drange for help on creating the required floating point dates</tt></dd></dl> -<dl><dt><a name="Axes-psd"><strong>psd</strong></a>(self, x, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x860b3e4></font>, window<font color="#909090">=<function window_hanning at 0x860b294></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>PSD(x, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,<br> +<dl><dt><a name="Axes-psd"><strong>psd</strong></a>(self, x, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x868817c></font>, window<font color="#909090">=<function window_hanning at 0x868802c></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>PSD(x, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,<br> window=mlab.window_hanning, noverlap=0, **kwargs)<br> <br> The power spectral density by Welches average periodogram method. The<br> @@ -3010,7 +3011,7 @@ axforeign.callbacks cbook.CallbackRegistry instances are<br> returned in case you want to disconnect the coupling</tt></dd></dl> -<dl><dt><a name="Axes-specgram"><strong>specgram</strong></a>(self, x, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x860b3e4></font>, window<font color="#909090">=<function window_hanning at 0x860b294></font>, noverlap<font color="#909090">=128</font>, cmap<font color="#909090">=None</font>, xextent<font color="#909090">=None</font>)</dt><dd><tt>SPECGRAM(x, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,<br> +<dl><dt><a name="Axes-specgram"><strong>specgram</strong></a>(self, x, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x868817c></font>, window<font color="#909090">=<function window_hanning at 0x868802c></font>, noverlap<font color="#909090">=128</font>, cmap<font color="#909090">=None</font>, xextent<font color="#909090">=None</font>)</dt><dd><tt>SPECGRAM(x, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,<br> window = mlab.window_hanning, noverlap=128,<br> cmap=None, xextent=None)<br> <br> @@ -3297,7 +3298,7 @@ <dl><dt><a name="Axes-xaxis_inverted"><strong>xaxis_inverted</strong></a>(self)</dt><dd><tt>Returns True if the x-axis is inverted.</tt></dd></dl> -<dl><dt><a name="Axes-xcorr"><strong>xcorr</strong></a>(self, x, y, normed<font color="#909090">=False</font>, detrend<font color="#909090">=<function detrend_none at 0x860b3e4></font>, usevlines<font color="#909090">=False</font>, maxlags<font color="#909090">=None</font>, **kwargs)</dt><dd><tt>XCORR(x, y, normed=False, detrend=mlab.detrend_none, usevlines=False, **kwargs):<br> +<dl><dt><a name="Axes-xcorr"><strong>xcorr</strong></a>(self, x, y, normed<font color="#909090">=False</font>, detrend<font color="#909090">=<function detrend_none at 0x868817c></font>, usevlines<font color="#909090">=False</font>, maxlags<font color="#909090">=None</font>, **kwargs)</dt><dd><tt>XCORR(x, y, normed=False, detrend=mlab.detrend_none, usevlines=False, **kwargs):<br> <br> Plot the cross correlation between x and y. If normed=True,<br> normalize the data but the cross correlation at 0-th lag. x<br> @@ -3760,6 +3761,7 @@ 'axes pixels' : pixels from lower left corner of axes<br> 'axes fraction' : 0,1 is lower left of axes and 1,1 is upper right<br> 'data' : use the coordinate system of the object being annotated (default)<br> + 'offset points' : Specify an offset (in points) from the xy value<br> 'polar' : you can specify theta, r for the annotation, even<br> in cartesian plots. Note that if you<br> are using a polar axes, you do not need<br> @@ -4312,7 +4314,7 @@ <dl><dt><a name="PolarAxes-clear"><strong>clear</strong></a>(self)</dt><dd><tt>clear the axes</tt></dd></dl> -<dl><dt><a name="PolarAxes-cohere"><strong>cohere</strong></a>(self, x, y, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x860b3e4></font>, window<font color="#909090">=<function window_hanning at 0x860b294></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>COHERE(x, y, NFFT=256, Fs=2, Fc=0, detrend = mlab.detrend_none,<br> +<dl><dt><a name="PolarAxes-cohere"><strong>cohere</strong></a>(self, x, y, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x868817c></font>, window<font color="#909090">=<function window_hanning at 0x868802c></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>COHERE(x, y, NFFT=256, Fs=2, Fc=0, detrend = mlab.detrend_none,<br> window = mlab.window_hanning, noverlap=0, **kwargs)<br> <br> cohere the coherence between x and y. Coherence is the normalized<br> @@ -4601,7 +4603,7 @@ removed. Chunking introduces artifacts at the chunk<br> boundaries unless antialiased = False</tt></dd></dl> -<dl><dt><a name="PolarAxes-csd"><strong>csd</strong></a>(self, x, y, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x860b3e4></font>, window<font color="#909090">=<function window_hanning at 0x860b294></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>CSD(x, y, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,<br> +<dl><dt><a name="PolarAxes-csd"><strong>csd</strong></a>(self, x, y, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x868817c></font>, window<font color="#909090">=<function window_hanning at 0x868802c></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>CSD(x, y, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,<br> window=window_hanning, noverlap=0, **kwargs)<br> <br> The cross spectral density Pxy by Welches average periodogram method.<br> @@ -5690,7 +5692,7 @@ See dates for helper functions date2num, num2date<br> and drange for help on creating the required floating point dates</tt></dd></dl> -<dl><dt><a name="PolarAxes-psd"><strong>psd</strong></a>(self, x, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x860b3e4></font>, window<font color="#909090">=<function window_hanning at 0x860b294></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>PSD(x, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,<br> +<dl><dt><a name="PolarAxes-psd"><strong>psd</strong></a>(self, x, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x868817c></font>, window<font color="#909090">=<function window_hanning at 0x868802c></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>PSD(x, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,<br> window=mlab.window_hanning, noverlap=0, **kwargs)<br> <br> The power spectral density by Welches average periodogram method. The<br> @@ -6382,7 +6384,7 @@ axforeign.callbacks cbook.CallbackRegistry instances are<br> returned in case you want to disconnect the coupling</tt></dd></dl> -<dl><dt><a name="PolarAxes-specgram"><strong>specgram</strong></a>(self, x, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x860b3e4></font>, window<font color="#909090">=<function window_hanning at 0x860b294></font>, noverlap<font color="#909090">=128</font>, cmap<font color="#909090">=None</font>, xextent<font color="#909090">=None</font>)</dt><dd><tt>SPECGRAM(x, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,<br> +<dl><dt><a name="PolarAxes-specgram"><strong>specgram</strong></a>(self, x, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x868817c></font>, window<font color="#909090">=<function window_hanning at 0x868802c></font>, noverlap<font color="#909090">=128</font>, cmap<font color="#909090">=None</font>, xextent<font color="#909090">=None</font>)</dt><dd><tt>SPECGRAM(x, NFFT=256, Fs=2, Fc=0, detrend=mlab.detrend_none,<br> window = mlab.window_hanning, noverlap=128,<br> cmap=None, xextent=None)<br> <br> @@ -6638,7 +6640,7 @@ <dl><dt><a name="PolarAxes-xaxis_inverted"><strong>xaxis_inverted</strong></a>(self)</dt><dd><tt>Returns True if the x-axis is inverted.</tt></dd></dl> -<dl><dt><a name="PolarAxes-xcorr"><strong>xcorr</strong></a>(self, x, y, normed<font color="#909090">=False</font>, detrend<font color="#909090">=<function detrend_none at 0x860b3e4></font>, usevlines<font color="#909090">=False</font>, maxlags<font color="#909090">=None</font>, **kwargs)</dt><dd><tt>XCORR(x, y, normed=False, detrend=mlab.detrend_none, usevlines=False, **kwargs):<br> +<dl><dt><a name="PolarAxes-xcorr"><strong>xcorr</strong></a>(self, x, y, normed<font color="#909090">=False</font>, detrend<font color="#909090">=<function detrend_none at 0x868817c></font>, usevlines<font color="#909090">=False</font>, maxlags<font color="#909090">=None</font>, **kwargs)</dt><dd><tt>XCORR(x, y, normed=False, detrend=mlab.detrend_none, usevlines=False, **kwargs):<br> <br> Plot the cross correlation between x and y. If normed=True,<br> normalize the data but the cross correlation at 0-th lag. x<br> @@ -6844,17 +6846,10 @@ <font color="#000000" face="helvetica, arial"><a name="PolarSubplot">class <strong>PolarSubplot</strong></a>(<a href="matplotlib.axes.html#SubplotBase">SubplotBase</a>, <a href="matplotlib.axes.html#PolarAxes">PolarAxes</a>)</font></td></tr> <tr bgcolor="#ffc8d8"><td rowspan=2><tt> </tt></td> -<td colspan=2><tt>Create a polar subplot with<br> +<td colspan=2><tt>subplot class for Polar <a href="#Axes">Axes</a><br> <br> - <a href="#PolarSubplot">PolarSubplot</a>(numRows, numCols, plotNum)<br> - <br> -where plotNum=1 is the first plot number and increasing plotNums<br> -fill rows first. max(plotNum)==numRows*numCols<br> - <br> -You can leave out the commas if numRows<=numCols<=plotNum<10, as<br> -in<br> - <br> - <a href="#Subplot">Subplot</a>(211) # 2 rows, 1 column, first (upper) plot<br> </tt></td></tr> +This is not normally instantiated by the user; instead,<br> +use the Figure.add_subplot(..., polar=True) method.<br> </tt></td></tr> <tr><td> </td> <td width="100%"><dl><dt>Method resolution order:</dt> <dd><a href="matplotlib.axes.html#PolarSubplot">PolarSubplot</a></dd> @@ -7121,6 +7116,7 @@ 'axes pixels' : pixels from lower left corner of axes<br> 'axes fraction' : 0,1 is lower left of axes and 1,1 is upper right<br> 'data' : use the coordinate system of the object being annotated (default)<br> + 'offset points' : Specify an offset (in points) from the xy value<br> 'polar' : you can specify theta, r for the annotation, even<br> in cartesian plots. Note that if you<br> are using a polar axes, you do not need<br> @@ -7673,7 +7669,7 @@ <dl><dt><a name="PolarSubplot-clear"><strong>clear</strong></a>(self)</dt><dd><tt>clear the axes</tt></dd></dl> -<dl><dt><a name="PolarSubplot-cohere"><strong>cohere</strong></a>(self, x, y, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x860b3e4></font>, window<font color="#909090">=<function window_hanning at 0x860b294></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>COHERE(x, y, NFFT=256, Fs=2, Fc=0, detrend = mlab.detrend_none,<br> +<dl><dt><a name="PolarSubplot-cohere"><strong>cohere</strong></a>(self, x, y, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x868817c></font>, window<font color="#909090">=<function window_hanning at 0x868802c></font>, noverlap<font color="#909090">=0</font>, **kwargs)</dt><dd><tt>COHERE(x, y, NFFT=256, Fs=2, Fc=0, detrend = mlab.detrend_none,<br> window = mlab.window_hanning, noverlap=0, **kwargs)<br> <br> cohere the coherence between x and y. Coherence is the normalized<br> @@ -7962,7 +7958,7 @@ removed. Chunking introduces artifacts at the chunk<br> boundaries unless antialiased = False</tt></dd></dl> -<dl><dt><a name="PolarSubplot-csd"><strong>csd</strong></a>(self, x, y, NFFT<font color="#909090">=256</font>, Fs<font color="#909090">=2</font>, Fc<font color="#909090">=0</font>, detrend<font color="#909090">=<function detrend_none at 0x860b3e4></font>, window<font color="#909090">=<function w... [truncated message content]
Revision: 5327 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5327&view=rev Author: jdh2358 Date: 2008年05月30日 10:34:24 -0700 (2008年5月30日) Log Message: ----------- updated site docs for 0.98 Modified Paths: -------------- trunk/htdocs/API_CHANGES trunk/htdocs/CHANGELOG trunk/htdocs/convert.py trunk/htdocs/credits.html.template trunk/htdocs/license.html.template trunk/htdocs/make.py trunk/htdocs/matplotlib.afm.html.template trunk/htdocs/matplotlib.artist.html.template trunk/htdocs/matplotlib.axes.html.template trunk/htdocs/matplotlib.axis.html.template trunk/htdocs/matplotlib.backend_bases.html.template trunk/htdocs/matplotlib.backends.backend_agg.html.template trunk/htdocs/matplotlib.backends.backend_cairo.html.template trunk/htdocs/matplotlib.backends.backend_gtk.html.template trunk/htdocs/matplotlib.backends.backend_gtkagg.html.template trunk/htdocs/matplotlib.backends.backend_gtkcairo.html.template trunk/htdocs/matplotlib.backends.backend_ps.html.template trunk/htdocs/matplotlib.backends.backend_qt.html.template trunk/htdocs/matplotlib.backends.backend_qtagg.html.template trunk/htdocs/matplotlib.backends.backend_svg.html.template trunk/htdocs/matplotlib.backends.backend_template.html.template trunk/htdocs/matplotlib.backends.backend_tkagg.html.template trunk/htdocs/matplotlib.backends.backend_wx.html.template trunk/htdocs/matplotlib.backends.backend_wxagg.html.template trunk/htdocs/matplotlib.cbook.html.template trunk/htdocs/matplotlib.cm.html.template trunk/htdocs/matplotlib.collections.html.template trunk/htdocs/matplotlib.colorbar.html.template trunk/htdocs/matplotlib.colors.html.template trunk/htdocs/matplotlib.contour.html.template trunk/htdocs/matplotlib.dates.html.template trunk/htdocs/matplotlib.dviread.html.template trunk/htdocs/matplotlib.figure.html.template trunk/htdocs/matplotlib.finance.html.template trunk/htdocs/matplotlib.font_manager.html.template trunk/htdocs/matplotlib.fontconfig_pattern.html.template trunk/htdocs/matplotlib.ft2font.html.template trunk/htdocs/matplotlib.image.html.template trunk/htdocs/matplotlib.legend.html.template trunk/htdocs/matplotlib.lines.html.template trunk/htdocs/matplotlib.mathtext.html trunk/htdocs/matplotlib.mathtext.html.template trunk/htdocs/matplotlib.mlab.html.template trunk/htdocs/matplotlib.numerix.html.template trunk/htdocs/matplotlib.patches.html.template trunk/htdocs/matplotlib.pylab.html.template trunk/htdocs/matplotlib.pyplot.html.template trunk/htdocs/matplotlib.quiver.html.template trunk/htdocs/matplotlib.rcsetup.html.template trunk/htdocs/matplotlib.table.html.template trunk/htdocs/matplotlib.texmanager.html.template trunk/htdocs/matplotlib.text.html.template trunk/htdocs/matplotlib.ticker.html.template trunk/htdocs/matplotlib.transforms.html.template trunk/htdocs/matplotlib.type1font.html.template trunk/htdocs/matplotlib.units.html.template trunk/htdocs/matplotlib.widgets.html.template trunk/htdocs/matplotlibrc trunk/htdocs/screenshots/makeshots.py trunk/htdocs/screenshots.html.template trunk/htdocs/tut/custom_axes.png trunk/htdocs/tut/date_demo2.png trunk/htdocs/tut/firstfig.png trunk/htdocs/tut/mathtext_tut.png trunk/htdocs/tut/secondfig.png trunk/htdocs/tut/subplot.png trunk/htdocs/tut/text_dict.png trunk/htdocs/tut/text_simple.png trunk/htdocs/tut/thirdfig.png trunk/htdocs/whats_new.html.template Added Paths: ----------- trunk/htdocs/screenshots/ellipse_demo.py Removed Paths: ------------- trunk/htdocs/screenshots/ellipse_large.py Modified: trunk/htdocs/API_CHANGES =================================================================== --- trunk/htdocs/API_CHANGES 2008年05月30日 17:30:59 UTC (rev 5326) +++ trunk/htdocs/API_CHANGES 2008年05月30日 17:34:24 UTC (rev 5327) @@ -1,3 +1,209 @@ + + matplotlib.image.imread now no longer always returns RGBA -- if + the image is luminance or RGB, it will return a MxN or MxNx3 array + if possible. Also uint8 is no longer always forced to float. + + Rewrote the cm.ScalarMappable callback infrastructure to use + cbook.CallbackRegistry rather than custom callback handling. Amy + users of add_observer/notify of the cm.ScalarMappable should uae + the cm.ScalarMappable.callbacksSM CallbackRegistry instead. + + New axes function and Axes method provide control over the plot + color cycle: axes.set_default_color_cycle(clist) and + Axes.set_color_cycle(clist). + + matplotlib now requires python2.4, so matplotlib.cbook will no + loner provide set, enumerate, reversed or izip compatability functions + + In numpy 1.0 bins are specified by the left edges only. The axes + method "hist" now uses future numpy 1.3 semantic for histograms. + Providing binedges, the last value gives the upper-right edge now, + which was implicitly set to +infinity in numpy 1.0. This also means + that the last bin doesn't contain upper outliers any more by default. + + New axes method and pyplot function, hexbin, is an alternative + to scatter for large datasets. It makes something like a + pcolor of a 2-D histogram, but uses hexagonal bins. + + New kwarg, "symmetric", in MaxNLocator + allows one require an axis to be centered on zero. + + toolkits must now be imported from mpl_toolkits (not matplotlib.toolkits) + +TRANSFORMS REFACTORING + + The primary goal of this refactoring was to make it easier to + extend matplotlib to support new kinds of projections. This is + primarily an internal improvement, and the possible user-visible + changes it allows are yet to come. + + See transforms.py for a description of the design of the new + transformation framework. + + The view intervals are now stored only in one place -- in the Axes + instance, not in the formatter instances as well. This means + formatters must get their limits from their Axis, which in turn + looks up its limits from the Axes. If a Locator is used + temporarily and not assigned to an Axis or Axes, (e.g. in + contour.py), a dummy axis must be created to store its bounds. + Call Locator.create_dummy_axis() to do so. + + The functionality of Pbox has been merged with Bbox. Its methods + now all return copies rather than modifying in place. + + The following lists many of the simple changes necessary to update + code from the old transformation framework to the new one. In + particular, methods that return a copy are named with a verb in + the past tense, whereas methods that alter an object in place are + named with a very in the present tense. + + transforms.py + Bbox.get_bounds() Bbox.bounds + + Bbox.width() Bbox.width + + Bbox.height() Bbox.height + + Bbox.intervalx().get_bounds() Bbox.intervalx + Bbox.intervalx().set_bounds() + [Bbox.intervalx is now a property.] + + Bbox.intervaly().get_bounds() Bbox.intervaly + Bbox.intervaly().set_bounds() + [Bbox.intervaly is now a property.] + + Bbox.xmin() Bbox.x0 or Bbox.xmin + Bbox.ymin() Bbox.y0 or Bbox.ymin + Bbox.xmax() Bbox.x1 or Bbox.xmax + Bbox.ymax() Bbox.y1 or Bbox.ymax + [The Bbox is bound by the points (x0, y0) to (x1, y1) and + there is no defined order to these points, that is, x0 is not + necessarily the left edge of the box. To get the left edge of + the Bbox, use the read-only property xmin.] + + Bbox.overlaps(bboxes) Bbox.count_overlaps(bboxes) + + bbox_all(bboxes) Bbox.union(bboxes) + [Bbox.union is a staticmethod.] + + lbwh_to_bbox(l, b, w, h) Bbox.from_bounds(x0, y0, w, h) + + inverse_transform_bbox(trans, bbox) bbox.inverse_transformed(trans) + + Interval.contains_open(v) interval_contains_open(tuple, v) + Interval.contains(v) interval_contains_open(tuple, v) + + identity_transform() IdentityTransform() + + blend_xy_sep_transform(xtrans, ytrans) blended_transform_factory(xtrans, ytrans) + + scale_transform(xs, ys) Affine2D().scale(xs[, ys]) + + get_bbox_transform(boxin, boxout) BboxTransform(boxin, boxout) or + BboxTransformFrom(boxin) or + BboxTransformTo(boxout) + + Transform.seq_xy_tup(points) Transform.transform(points) + + Transform.inverse_xy_tup(points) Transform.inverted().transform(points) + + axes.py + Axes.get_position() Axes.get_position() + [Axes.get_position() used to return a list of points, not it + returns a transforms.Bbox instance.] + + Axes.set_position() Axes.set_position() + [Axes.set_position() now accepts either four scalars or a + transforms Bbox instance.] + + [also returns a Bbox] + Axes.toggle_log_lineary() Axes.set_yscale() + [Since the recfactoring allows for more than two scale types + ('log' or 'linear'), it no longer makes sense to have a + toggle. Axes.toggle_log_lineary() has been removed.] + + Axes.hlines(linestyle=) Axes.hlines(linestyles=) + Axes.vlines(linestyle=) Axes.vlines(linestyles=) + [The kwarg 'linestyle' has been replaced with 'linestyles', + which accepts either a single linestyle or a list of + linestyles to use.] + + Subplot class is gone -- now there is only SubplotBase. + + The Polar class has moved to projections/polar.py + + artist.py + Artist.set_clip_path(path) Artist.set_clip_path(path, transform) + [set_clip_path now accepts a path.Path instance and a + transformation that will be applied to the path immediately + before clipping.] + + collections.py + linestyle linestyles + [Linestyles are now treated like all other collection + attributes -- a single value or multiple values may be + provided.] + + colors.py + ColorConvertor.to_rgba_list(c) ColorConvertor.to_rgba_array(c) + [ColorConvertor.to_rgba_array(c) returns an Nx4 Numpy array of + RGBA color quadruples.] + + contour.py + Contour._segments Contour.get_paths() + [Contour.get_paths() now returns a list of path.Path instances.] + + figure.py + Figure.dpi.get()/set() Figure.dpi (a property) + + patches.py + get_verts() get_path() + [Patch.get_path() returns a path.Path instance.] + + backend_bases.py + GraphicsContext.set_clip_rectangle(tuple) GraphicsContext.set_clip_rectangle(bbox) + + GraphicsContext.get_clip_path() GraphicsContext.get_clip_path() + [GraphicsContext.get_clip_path() returns a tuple of the form + (path, affine_transform), where path is a path.Path instance + and affine_transform is a transforms.Affine2D instance.] + + GraphicsContext.set_clip_path(clippath) GraphicsContext.set_clip_path(clippath) + [Now accepts only an instance of transforms.TransformedPath.] + + RendererBase class: + **new methods** ---> + draw_path(self, gc, path, transform, rgbFace) + + draw_markers(self, gc, marker_path, marker_trans, path, trans, rgbFace) + + draw_path_collection(self, master_transform, cliprect, clippath, + clippath_trans, paths, all_transforms, offsets, + offsetTrans, facecolors, edgecolors, linewidths, + linestyles, antialiaseds) [optional] + + + **changed methods** ---> + draw_image(self, x, y, im, bbox) draw_image(self, x, y, im, bbox, + clippath, clippath_trans) + + **removed methods** ---> + draw_arc + draw_line_collection + draw_line + draw_lines + draw_point + draw_quad_mesh + draw_poly_collection + draw_polygon + draw_rectangle + draw_regpoly_collection + +END OF TRANSFORMS REFACTORING + + + + 0.91.2 Released For csv2rec, checkrows=0 is the new default indicating all rows Modified: trunk/htdocs/CHANGELOG =================================================================== --- trunk/htdocs/CHANGELOG 2008年05月30日 17:30:59 UTC (rev 5326) +++ trunk/htdocs/CHANGELOG 2008年05月30日 17:34:24 UTC (rev 5327) @@ -1,4 +1,255 @@ =============================================================== +2008年05月29日 Released 0.98.0 at revision 5314 + +2008年05月29日 matplotlib.image.imread now no longer always returns RGBA + -- if the image is luminance or RGB, it will return a MxN + or MxNx3 array if possible. Also uint8 is no longer always + forced to float. + +2008年05月29日 Implement path clipping in PS backend - JDH + +2008年05月29日 Fixed two bugs in texmanager.py: + improved comparison of dvipng versions + fixed a bug introduced when get_grey method was added + - DSD + +2008年05月28日 Fix crashing of PDFs in xpdf and ghostscript when two-byte + characters are used with Type 3 fonts - MGD + +2008年05月28日 Allow keyword args to configure widget properties as + requested in + http://sourceforge.net/tracker/index.php?func=detail&aid=1866207&group_id=80706&atid=560722 + - JDH + +2008年05月28日 Replaced '-' with u'\u2212' for minus sign as requested in + http://sourceforge.net/tracker/index.php?func=detail&aid=1962574&group_id=80706&atid=560720 + +2008年05月28日 zero width/height Rectangles no longer influence the + autoscaler. Useful for log histograms with empty bins - + JDH + +2008年05月28日 Fix rendering of composite glyphs in Type 3 conversion + (particularly as evidenced in the Eunjin.ttf Korean font) + Thanks Jae-Joon Lee for finding this! + +2008年05月27日 Rewrote the cm.ScalarMappable callback infrastructure to + use cbook.CallbackRegistry rather than custom callback + handling. Amy users of add_observer/notify of the + cm.ScalarMappable should uae the + cm.ScalarMappable.callbacksSM CallbackRegistry instead. JDH + +2008年05月27日 Fix TkAgg build on Ubuntu 8.04 (and hopefully a more + general solution for other platforms, too.) + +2008年05月24日 Added PIL support for loading images to imread (if PIL is + available) - JDH + +2008年05月23日 Provided a function and a method for controlling the + plot color cycle. - EF + +2008年05月23日 Major revision of hist(). Can handle 2D arrays and create + stacked histogram plots; keyword 'width' deprecated and + rwidth (relative width) introduced; align='edge' changed + to center of bin - MM + +2008年05月22日 Added support for ReST-based doumentation using Sphinx. + Documents are located in doc/, and are broken up into + a users guide and an API reference. To build, run the + make.py files. Sphinx-0.4 is needed to build generate xml, + which will be useful for rendering equations with mathml, + use sphinx from svn until 0.4 is released - DSD + +2008年05月21日 Fix segfault in TkAgg backend - MGD + +2008年05月21日 Fix a "local variable unreferenced" bug in plotfile - MM + +2008年05月19日 Fix crash when Windows can not access the registry to + determine font path [Bug 1966974, thanks Patrik Simons] - MGD + +2008年05月16日 removed some unneeded code w/ the python 2.4 requirement. + cbook no longer provides compatibility for reversed, + enumerate, set or izip. removed lib/subprocess, mpl1, + sandbox/units, and the swig code. This stuff should remain + on the maintenance branch for archival purposes. JDH + +2008年05月16日 Reorganized examples dir - JDH + +2008年05月16日 Added 'elinewidth' keyword arg to errorbar, based on patch + by Christopher Brown - MM + +2008年05月16日 Added 'cumulative' keyword arg to hist to plot cumulative + histograms. For normed hists, this is normalized to one - MM + +2008年05月15日 Fix Tk backend segfault on some machines - MGD + +2008年05月14日 Don't use stat on Windows (fixes font embedding problem) - MGD + +2008年05月09日 Fix /singlequote (') in Postscript backend - MGD + +2008年05月08日 Fix kerning in SVG when embedding character outlines - MGD + +2008年05月07日 Switched to future numpy histogram semantic in hist - MM + +2008年05月06日 Fix strange colors when blitting in QtAgg and Qt4Agg - MGD + +2008年05月05日 pass notify_axes_change to the figure's add_axobserver + in the qt backends, like we do for the other backends. + Thanks Glenn Jones for the report - DSD + +2008年05月02日 Added step histograms, based on patch by Erik Tollerud. - MM + +2008年05月02日 On PyQt <= 3.14 there is no way to determine the underlying + Qt version. [1851364] - MGD + +2008年05月02日 Don't call sys.exit() when pyemf is not found [1924199] - + MGD + +2008年05月02日 Update _subprocess.c from upstream Python 2.5.2 to get a + few memory and reference-counting-related bugfixes. See + bug 1949978. - MGD + +2008年04月30日 Added some record array editing widgets for gtk -- see + examples/rec_edit*.py - JDH + +2008年04月29日 Fix bug in mlab.sqrtm - MM + +2008年04月28日 Fix bug in SVG text with Mozilla-based viewers (the symbol + tag is not supported) - MGD + +2008年04月27日 Applied patch by Michiel de Hoon to add hexbin + axes method and pyplot function - EF + +2008年04月25日 Enforce python >= 2.4; remove subprocess build - EF + +2008年04月25日 Enforce the numpy requirement at build time - JDH + +2008年04月24日 Make numpy 1.1 and python 2.3 required when importing + matplotlib - EF + +2008年04月24日 Fix compilation issues on VS2003 (Thanks Martin Spacek for + all the help) - MGD + +2008年04月24日 Fix sub/superscripts when the size of the font has been + changed - MGD + +2008年04月22日 Use "svg.embed_char_paths" consistently everywhere - MGD + +2008年04月20日 Add support to MaxNLocator for symmetric axis autoscaling. - EF + +2008年04月20日 Fix double-zoom bug. - MM + +2008年04月15日 Speed up color mapping. - EF + +2008年04月12日 Speed up zooming and panning of dense images. - EF + +2008年04月11日 Fix global font rcParam setting after initialization + time. - MGD + +2008年04月11日 Revert commits 5002 and 5031, which were intended to + avoid an unnecessary call to draw(). 5002 broke saving + figures before show(). 5031 fixed the problem created in + 5002, but broke interactive plotting. Unnecessary call to + draw still needs resolution - DSD + +2008年04月07日 Improve color validation in rc handling, suggested + by Lev Givon - EF + +2008年04月02日 Allow to use both linestyle definition arguments, '-' and + 'solid' etc. in plots/collections - MM + +2008年03月27日 Fix saving to Unicode filenames with Agg backend + (other backends appear to already work...) + (Thanks, Christopher Barker) - MGD + +2008年03月26日 Fix SVG backend bug that prevents copying and pasting in + Inkscape (thanks Kaushik Ghose) - MGD + +2008年03月24日 Removed an unnecessary call to draw() in the backend_qt* + mouseReleaseEvent. Thanks to Ted Drain - DSD + +2008年03月23日 Fix a pdf backend bug which sometimes caused the outermost + gsave to not be balanced with a grestore. - JKS + +2008年03月20日 Fixed a minor bug in ContourSet._process_linestyles when + len(linestyles)==Nlev - MM + +2008年03月19日 Changed ma import statements to "from numpy import ma"; + this should work with past and future versions of + numpy, whereas "import numpy.ma as ma" will work only + with numpy >= 1.05, and "import numerix.npyma as ma" + is obsolete now that maskedarray is replacing the + earlier implementation, as of numpy 1.05. + +2008年03月14日 Removed an apparently unnecessary call to + FigureCanvasAgg.draw in backend_qt*agg. Thanks to Ted + Drain - DSD + +2008年03月10日 Workaround a bug in backend_qt4agg's blitting due to a + buffer width/bbox width mismatch in _backend_agg's + copy_from_bbox - DSD + +2008年02月29日 Fix class Wx toolbar pan and zoom functions (Thanks Jeff + Peery) - MGD + +2008年02月16日 Added some new rec array functionality to mlab + (rec_summarize, rec2txt and rec_groupby). See + examples/rec_groupby_demo.py. Thanks to Tim M for rec2txt. + +2008年02月12日 Applied Erik Tollerud's span selector patch - JDH + +2008年02月11日 Update plotting() doc string to refer to getp/setp. - JKS + +2008年02月10日 Fixed a problem with square roots in the pdf backend with + usetex. - JKS + +2008年02月08日 Fixed minor __str__ bugs so getp(gca()) works. - JKS + +2008年02月05日 Added getters for title, xlabel, ylabel, as requested + by Brandon Kieth - EF + +2008年02月05日 Applied Gael's ginput patch and created + examples/ginput_demo.py - JDH + +2008年02月03日 Expose interpnames, a list of valid interpolation + methods, as an AxesImage class attribute. - EF + +2008年02月03日 Added BoundaryNorm, with examples in colorbar_only.py + and image_masked.py. - EF + +2008年02月03日 Force dpi=72 in pdf backend to fix picture size bug. - JKS + +2008年02月01日 Fix doubly-included font problem in Postscript backend - MGD + +2008年02月01日 Fix reference leak in ft2font Glyph objects. - MGD + +2008年01月31日 Don't use unicode strings with usetex by default - DSD + +2008年01月31日 Fix text spacing problems in PDF backend with *some* fonts, + such as STIXGeneral. + +2008年01月31日 Fix \sqrt with radical number (broken by making [ and ] + work below) - MGD + +2008年01月27日 Applied Martin Teichmann's patch to improve the Qt4 + backend. Uses Qt's builtin toolbars and statusbars. + See bug 1828848 - DSD + +2008年01月10日 Moved toolkits to mpl_toolkits, made mpl_toolkits + a namespace package - JSWHIT + +2008年01月10日 Use setup.cfg to set the default parameters (tkagg, + numpy) when building windows installers - DSD + +2008年01月10日 Fix bug displaying [ and ] in mathtext - MGD + +2008年01月10日 Fix bug when displaying a tick value offset with scientific + notation. (Manifests itself as a warning that the \times + symbol can not be found). - MGD + +2008年01月10日 Use setup.cfg to set the default parameters (tkagg, + numpy) when building windows installers - DSD + +=============================================================== 2008年01月06日 Released 0.91.2 at revision 4802 2007年12月26日 Reduce too-late use of matplotlib.use() to a warning @@ -136,6 +387,75 @@ 2007年10月31日 Made log color scale easier to use with contourf; automatic level generation now works. - EF +2007年10月29日 TRANSFORMS REFACTORING + + The primary goal of this refactoring was to make it easier + to extend matplotlib to support new kinds of projections. + This is primarily an internal improvement, and the possible + user-visible changes it allows are yet to come. + + The transformation framework was completely rewritten in + Python (with Numpy). This will make it easier to add news + kinds of transformations without writing C/C++ code. + + Transforms are composed into a 'transform tree', made of + transforms whose value depends on other transforms (their + children). When the contents of children change, their + parents are automatically updated to reflect those changes. + To do this an "invalidation" method is used: when children + change, all of their ancestors are marked as "invalid". + When the value of a transform is accessed at a later time, + its value is recomputed only if it is invalid, otherwise a + cached value may be used. This prevents unnecessary + recomputations of transforms, and contributes to better + interactive performance. + + The framework can be used for both affine and non-affine + transformations. However, for speed, we want use the + backend renderers to perform affine transformations + whenever possible. Therefore, it is possible to perform + just the affine or non-affine part of a transformation on a + set of data. The affine is always assumed to occur after + the non-affine. For any transform: + + full transform == non-affine + affine + + Much of the drawing has been refactored in terms of + compound paths. Therefore, many methods have been removed + from the backend interface and replaced with a a handful to + draw compound paths. This will make updating the backends + easier, since there is less to update. It also should make + the backends more consistent in terms of functionality. + + User visible changes: + + - POLAR PLOTS: Polar plots are now interactively zoomable, + and the r-axis labels can be interactively rotated. + Straight line segments are now interpolated to follow the + curve of the r-axis. + + - Non-rectangular clipping works in more backends and with + more types of objects. + + - Sharing an axis across figures is now done in exactly + the same way as sharing an axis between two axes in the + same figure: + + fig1 = figure() + fig2 = figure() + + ax1 = fig1.add_subplot(111) + ax2 = fig2.add_subplot(111, sharex=ax1, sharey=ax1) + + - linestyles now include steps-pre, steps-post and + steps-mid. The old step still works and is equivalent to + step-pre. + + - Multiple line styles may be provided to a collection. + + See API_CHANGES for more low-level information about this + refactoring. + 2007年10月24日 Added ax kwarg to Figure.colorbar and pyplot.colorbar - EF 2007年10月19日 Removed a gsave/grestore pair surrounding _draw_ps, which @@ -3251,3 +3571,4 @@ 2003年11月21日 - make a dash-dot dict for the GC 2003年12月15日 - fix install path bug +t Modified: trunk/htdocs/convert.py =================================================================== --- trunk/htdocs/convert.py 2008年05月30日 17:30:59 UTC (rev 5326) +++ trunk/htdocs/convert.py 2008年05月30日 17:34:24 UTC (rev 5327) @@ -187,17 +187,15 @@ # re-add news to the params dict 'tables' entry below for news -news1= NewsBox("""We have recetly merged significant changes in the internal matplotlib transformation infrastructure into the main matplotlib codebase. While this will not affect typical pylab users, some users of the API and transformation code will to make some code changes to work with the new transformations. Please see <a href=MIGRATION.txt>migration</a> and <a href=API_CHANGES>API_CHANGES</a> for a summary of the migration path and changes in the API, and let us know on the <a href=http://sourceforge.net/mail/?group_id=80706>mailing lists</a> if you are experiecing problems""", title='Major changes in matplotlib svn') +news1= NewsBox("""matplotlib <a +href=http://sourceforge.net/project/showfiles.php?group_id=80706&package_id=278194&release_id=603020>0.98.0</a> is a major release which requires python2.4 and numpy 1.1. It contains a number of internal improvements and may require some power users to update their code; see <a href=MIGRATION.txt>migration</a> and <a href=API_CHANGES>API_CHANGES</a>. We are supporting a maintenance branch of the older code available at matplotlib <a +href=http://sourceforge.net/project/showfiles.php?group_id=80706&package_id=82474&release_id=603021>0.91.3</a>""", title='New release') news2 = NewsBox("""Help support matplotlib development by <a href=http://sourceforge.net/project/project_donations.php?group_id=80706>donating</a> to fund developer sprints and other matplotlib development costs.""", title='Donate') -news3 = NewsBox("""matplotlib <a -href=http://sourceforge.net/project/platformdownload.php?group_id=80706>0.91.2</a> -is out. See <a href=whats_new.html>what's new</a> for a summary of new features. """, title='New release') - table1 = LinkBox(header='Matplotlib', links=( ('Home', 'http://matplotlib.sourceforge.net'), ("What's New", 'whats_new.html'), @@ -211,8 +209,10 @@ table2 = LinkBox(header='Documentation', links=( ('Tutorial', 'tutorial.html'), - ("User's Guide (pdf)", 'users_guide_%s.pdf'%matplotlib.__version__), - ("API (pdf)", 'api.pdf'), + ("User's Guide ", 'users_guide_%s.pdf'%matplotlib.__version__), + ('API tutorial', 'pycon/event_handling_tut.pdf'), + ('Event handling', 'pycon/artist_api_tut.pdf'), + ("API ", 'api.pdf'), ('FAQ', 'faq.html'), ('Cookbook / wiki', 'http://www.scipy.org/wikis/topical_software/MatplotlibCookbook'), ('pylab interface', 'pylab_commands.html'), @@ -232,7 +232,7 @@ params = { 'myemail' : '<a href=mailto:jdh...@ac...> (jdh...@ac...)</a>', - 'tables' : (news1, news2, news3, table1, table2, table3), + 'tables' : (news1, news2, table1, table2, table3), 'default_table' : 'border=1 cellpadding=3 cellspacing=2', } Modified: trunk/htdocs/credits.html.template =================================================================== --- trunk/htdocs/credits.html.template 2008年05月30日 17:30:59 UTC (rev 5326) +++ trunk/htdocs/credits.html.template 2008年05月30日 17:34:24 UTC (rev 5327) @@ -140,7 +140,7 @@ support, implementing Knuth's box layout algorithms, saving to file-like objects across backends, and is responsible for numerous bug-fixes, much better font and unicode support, and feature and - performance enhancements across the matplotlib code base. </li> + performance enhancements across the matplotlib code base. He also rewrote the transformation infrastructure to support custom projections and scales/li> Modified: trunk/htdocs/license.html.template =================================================================== --- trunk/htdocs/license.html.template 2008年05月30日 17:30:59 UTC (rev 5326) +++ trunk/htdocs/license.html.template 2008年05月30日 17:34:24 UTC (rev 5327) @@ -6,7 +6,7 @@ <pre> -LICENSE AGREEMENT FOR MATPLOTLIB 0.91.2svn +LICENSE AGREEMENT FOR MATPLOTLIB 0.98.0 -------------------------------------- 1. This LICENSE AGREEMENT is between the John D. Hunter ("JDH"), and the @@ -17,30 +17,30 @@ 2. Subject to the terms and conditions of this License Agreement, JDH hereby grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, analyze, test, perform and/or display publicly, prepare -derivative works, distribute, and otherwise use matplotlib 0.91.2svn +derivative works, distribute, and otherwise use matplotlib 0.98.0 alone or in any derivative version, provided, however, that JDH's License Agreement and JDH's notice of copyright, i.e., "Copyright (c) 2002-2004 John D. Hunter; All Rights Reserved" are retained in -matplotlib 0.91.2svn alone or in any derivative version prepared by +matplotlib 0.98.0 alone or in any derivative version prepared by Licensee. 3. In the event Licensee prepares a derivative work that is based on or -incorporates matplotlib 0.91.2svn or any part thereof, and wants to +incorporates matplotlib 0.98.0 or any part thereof, and wants to make the derivative work available to others as provided herein, then Licensee hereby agrees to include in any such work a brief summary of -the changes made to matplotlib 0.91.2svn. +the changes made to matplotlib 0.98.0. -4. JDH is making matplotlib 0.91.2svn available to Licensee on an "AS +4. JDH is making matplotlib 0.98.0 available to Licensee on an "AS IS" basis. JDH MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, JDH MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS -FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF MATPLOTLIB 0.91.2svn +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF MATPLOTLIB 0.98.0 WILL NOT INFRINGE ANY THIRD PARTY RIGHTS. 5. JDH SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF MATPLOTLIB -0.91.2svn FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR +0.98.0 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING -MATPLOTLIB 0.91.2svn, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF +MATPLOTLIB 0.98.0, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. 6. This License Agreement will automatically terminate upon a material @@ -52,7 +52,7 @@ trademarks or trade name in a trademark sense to endorse or promote products or services of Licensee, or any third party. -8. By copying, installing or otherwise using matplotlib 0.91.2svn, +8. By copying, installing or otherwise using matplotlib 0.98.0, Licensee agrees to be bound by the terms and conditions of this License Agreement. Modified: trunk/htdocs/make.py =================================================================== --- trunk/htdocs/make.py 2008年05月30日 17:30:59 UTC (rev 5326) +++ trunk/htdocs/make.py 2008年05月30日 17:34:24 UTC (rev 5327) @@ -1,39 +1,17 @@ import os, sys, glob, shutil import matplotlib -MPL_SRC = os.environ.get('MPL_SRC', '/home/darren/src/matplotlib/matplotlib') +MPL_SRC = os.environ.get('MPL_SRC', '/home/jdhunter/mpl') MPL_SRC = '/home/jdhunter/mpl' -#copy all the examples to the htdocs examples dir -for fname in glob.glob('examples/*.py*'): - os.remove(fname) - -for pathname in glob.glob(os.path.join(MPL_SRC, 'examples', '*.py')): - path, fname = os.path.split(pathname) - if fname.startswith('_tmp'): continue - newname = os.path.join('examples', fname) - print 'copying %s to %s' % (pathname, newname) - shutil.copy(pathname, newname) -widgetfiles = glob.glob(os.path.join(MPL_SRC, 'examples', 'widgets', '*.py')) -widgetfiles.append(os.path.join(MPL_SRC, 'examples', 'widgets', 'README')) -for pathname in widgetfiles: - path, fname = os.path.split(pathname) - if fname.startswith('_tmp'): continue - newname = os.path.join('examples', 'widgets', fname) - print 'copying %s to %s' % (pathname, newname) - shutil.copy(pathname, newname) - -widgetfiles = glob.glob(os.path.join(MPL_SRC, 'examples', 'units', '*.py')) -for pathname in widgetfiles: - path, fname = os.path.split(pathname) - if fname.startswith('_tmp'): continue - newname = os.path.join('examples', 'units', fname) - print 'copying %s to %s' % (pathname, newname) - shutil.copy(pathname, newname) - +os.system('rm -rf examples') +os.system('tar -cv -C ~/mpl examples --exclude .svn --exclude Agg --exclude PDF --exclude PS --exclude Template|tar x') os.system('zip -r -o matplotlib_examples_%s.zip examples'%matplotlib.__version__) +os.system('rm -rf doc') +os.system('tar -cv -C ~/mpl doc/devel doc/users --exclude .svn --exclude png |tar x') + os.system('cp ../users_guide/users_guide.pdf users_guide_%s.pdf'%matplotlib.__version__) filenames = ( 'INSTALL', 'CHANGELOG', 'API_CHANGES', 'MIGRATION.txt') @@ -53,16 +31,16 @@ #os.system('cd screenshots; python makeshots.py; rm -f _tmp*.py') print 'Making tutorial images' -#os.system('cd tut; python runall.py') +os.system('cd tut; python runall.py') -#print 'Running process_docs' -os.system('python process_docs.py') +print 'Running process_docs' +#os.system('python process_docs.py') print 'Running convert' os.system('python convert.py') print 'Building archive' version = matplotlib.__version__ -tarcommand = 'tar cfz site.tar.gz *.html api.pdf users_guide_%(version)s.pdf matplotlib_examples_%(version)s.zip screenshots tut examples matplotlibrc CHANGELOG API_CHANGES MIGRATION.txt set_begone.py -X exclude.txt'%locals() +tarcommand = 'tar cfz site.tar.gz *.html api.pdf users_guide_%(version)s.pdf matplotlib_examples_%(version)s.zip screenshots tut doc examples matplotlibrc CHANGELOG API_CHANGES MIGRATION.txt set_begone.py -X exclude.txt'%locals() print tarcommand os.system(tarcommand) Modified: trunk/htdocs/matplotlib.afm.html.template =================================================================== --- trunk/htdocs/matplotlib.afm.html.template 2008年05月30日 17:30:59 UTC (rev 5326) +++ trunk/htdocs/matplotlib.afm.html.template 2008年05月30日 17:34:24 UTC (rev 5327) @@ -4,7 +4,7 @@ <td valign=bottom> <br> <font color="#ffffff" face="helvetica, arial"> <br><big><big><strong><a href="matplotlib.html"><font color="#ffffff">matplotlib</font></a>.afm</strong></big></big></font></td ><td align=right valign=bottom -><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="file:/home/jdhunter/dev/lib/python2.5/site-packages/matplotlib/afm.py">/home/jdhunter/dev/lib/python2.5/site-packages/matplotlib/afm.py</a></font></td></tr></table> +><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="file:/home/jdhunter/dev/lib64/python2.5/site-packages/matplotlib/afm.py">/home/jdhunter/dev/lib64/python2.5/site-packages/matplotlib/afm.py</a></font></td></tr></table> <p><tt>This is a python interface to Adobe Font Metrics Files. Although a<br> number of other python implementations exist (and may be more complete<br> than mine) I decided not to go with them because either they were<br> Modified: trunk/htdocs/matplotlib.artist.html.template =================================================================== --- trunk/htdocs/matplotlib.artist.html.template 2008年05月30日 17:30:59 UTC (rev 5326) +++ trunk/htdocs/matplotlib.artist.html.template 2008年05月30日 17:34:24 UTC (rev 5327) @@ -4,7 +4,7 @@ <td valign=bottom> <br> <font color="#ffffff" face="helvetica, arial"> <br><big><big><strong><a href="matplotlib.html"><font color="#ffffff">matplotlib</font></a>.artist</strong></big></big></font></td ><td align=right valign=bottom -><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="file:/home/jdhunter/dev/lib/python2.5/site-packages/matplotlib/artist.py">/home/jdhunter/dev/lib/python2.5/site-packages/matplotlib/artist.py</a></font></td></tr></table> +><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="file:/home/jdhunter/dev/lib64/python2.5/site-packages/matplotlib/artist.py">/home/jdhunter/dev/lib64/python2.5/site-packages/matplotlib/artist.py</a></font></td></tr></table> <p></p> <p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> @@ -14,9 +14,8 @@ <tr><td bgcolor="#aa55cc"><tt> </tt></td><td> </td> <td width="100%"><table width="100%" summary="list"><tr><td width="25%" valign=top><a href="re.html">re</a><br> -</td><td width="25%" valign=top><a href="sys.html">sys</a><br> -</td><td width="25%" valign=top><a href="matplotlib.units.html">matplotlib.units</a><br> -</td><td width="25%" valign=top></td></tr></table></td></tr></table><p> +</td><td width="25%" valign=top><a href="warnings.html">warnings</a><br> +</td><td width="25%" valign=top></td><td width="25%" valign=top></td></tr></table></td></tr></table><p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> <tr bgcolor="#ee77aa"> <td colspan=3 valign=bottom> <br> @@ -24,14 +23,19 @@ <tr><td bgcolor="#ee77aa"><tt> </tt></td><td> </td> <td width="100%"><dl> +<dt><font face="helvetica, arial"><a href="__builtin__.html#object">__builtin__.object</a> +</font></dt><dd> +<dl> <dt><font face="helvetica, arial"><a href="matplotlib.artist.html#Artist">Artist</a> -</font></dt><dt><font face="helvetica, arial"><a href="matplotlib.artist.html#ArtistInspector">ArtistInspector</a> </font></dt></dl> +</dd> +<dt><font face="helvetica, arial"><a href="matplotlib.artist.html#ArtistInspector">ArtistInspector</a> +</font></dt></dl> <p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> <tr bgcolor="#ffc8d8"> <td colspan=3 valign=bottom> <br> -<font color="#000000" face="helvetica, arial"><a name="Artist">class <strong>Artist</strong></a></font></td></tr> +<font color="#000000" face="helvetica, arial"><a name="Artist">class <strong>Artist</strong></a>(<a href="__builtin__.html#object">__builtin__.object</a>)</font></td></tr> <tr bgcolor="#ffc8d8"><td rowspan=2><tt> </tt></td> <td colspan=2><tt>Abstract base class for someone who renders into a FigureCanvas<br> </tt></td></tr> @@ -78,6 +82,9 @@ <dl><dt><a name="Artist-get_transform"><strong>get_transform</strong></a>(self)</dt><dd><tt>return the Transformation instance used by this artist</tt></dd></dl> +<dl><dt><a name="Artist-get_transformed_clip_path_and_affine"><strong>get_transformed_clip_path_and_affine</strong></a>(self)</dt><dd><tt>Return the clip path with the non-affine part of its transformation applied,<br> +and the remaining affine part of its transformation.</tt></dd></dl> + <dl><dt><a name="Artist-get_visible"><strong>get_visible</strong></a>(self)</dt><dd><tt>return the artist's visiblity</tt></dd></dl> <dl><dt><a name="Artist-get_zorder"><strong>get_zorder</strong></a>(self)</dt></dl> @@ -133,9 +140,22 @@ <br> ACCEPTS: [True | False]</tt></dd></dl> -<dl><dt><a name="Artist-set_clip_path"><strong>set_clip_path</strong></a>(self, path)</dt><dd><tt>Set the artist's clip path<br> +<dl><dt><a name="Artist-set_clip_path"><strong>set_clip_path</strong></a>(self, path, transform<font color="#909090">=None</font>)</dt><dd><tt>Set the artist's clip path, which may be:<br> <br> -ACCEPTS: an agg.path_storage instance</tt></dd></dl> + a) a Patch (or subclass) instance<br> + <br> + b) a Path instance, in which cas aoptional transform may<br> + be provided, which will be applied to the path before using it<br> + for clipping.<br> + <br> + c) None, to remove the clipping path<br> + <br> +For efficiency, if the path happens to be an axis-aligned<br> +rectangle, this method will set the clipping box to the<br> +corresponding rectangle and set the clipping path to None.<br> + <br> +ACCEPTS: a Path instance and a Transform instance, a Patch<br> +instance, or None</tt></dd></dl> <dl><dt><a name="Artist-set_contains"><strong>set_contains</strong></a>(self, picker)</dt><dd><tt>Replace the contains test used by this artist. The new picker should<br> be a callable function which determines whether the artist is hit by the<br> @@ -207,6 +227,14 @@ <dl><dt><a name="Artist-update_from"><strong>update_from</strong></a>(self, other)</dt><dd><tt>copy properties from other to self</tt></dd></dl> <hr> +Data descriptors defined here:<br> +<dl><dt><strong>__dict__</strong></dt> +<dd><tt>dictionary for instance variables (if defined)</tt></dd> +</dl> +<dl><dt><strong>__weakref__</strong></dt> +<dd><tt>list of weak references to the object (if defined)</tt></dd> +</dl> +<hr> Data and other attributes defined here:<br> <dl><dt><strong>aname</strong> = 'Artist'</dl> @@ -236,11 +264,13 @@ property, which does not, return 'transform'</tt></dd></dl> <dl><dt><a name="ArtistInspector-get_aliases"><strong>get_aliases</strong></a>(self)</dt><dd><tt>get a dict mapping fullname -> alias for each alias in o.<br> -Eg for lines: {'markerfacecolor': 'mfc',<br> - 'linewidth' : 'lw',<br> - }</tt></dd></dl> +Eg for lines::<br> + <br> + {'markerfacecolor': 'mfc',<br> + 'linewidth' : 'lw',<br> + }</tt></dd></dl> -<dl><dt><a name="ArtistInspector-get_setters"><strong>get_setters</strong></a>(self)</dt><dd><tt>Get the attribute strings with setters for object h. Eg, for a line,<br> +<dl><dt><a name="ArtistInspector-get_setters"><strong>get_setters</strong></a>(self)</dt><dd><tt>Get the attribute strings with setters for <a href="__builtin__.html#object">object</a> h. Eg, for a line,<br> return ['markerfacecolor', 'linewidth', ....]</tt></dd></dl> <dl><dt><a name="ArtistInspector-get_valid_values"><strong>get_valid_values</strong></a>(self, attr)</dt><dd><tt>get the legal arguments for the setter associated with attr<br> @@ -251,7 +281,7 @@ Eg, for a line linestyle, return<br> [ '-' | '--' | '-.' | ':' | 'steps' | 'None' ]</tt></dd></dl> -<dl><dt><a name="ArtistInspector-is_alias"><strong>is_alias</strong></a>(self, o)</dt><dd><tt>return true if method object o is an alias for another function</tt></dd></dl> +<dl><dt><a name="ArtistInspector-is_alias"><strong>is_alias</strong></a>(self, o)</dt><dd><tt>return true if method <a href="__builtin__.html#object">object</a> o is an alias for another function</tt></dd></dl> <dl><dt><a name="ArtistInspector-pprint_getters"><strong>pprint_getters</strong></a>(self)</dt><dd><tt>return the getters and actual values as list of strings'</tt></dd></dl> @@ -305,8 +335,8 @@ linewidth or lw = 2</tt></dd></dl> <dl><dt><a name="-kwdoc"><strong>kwdoc</strong></a>(a)</dt></dl> <dl><dt><a name="-setp"><strong>setp</strong></a>(h, *args, **kwargs)</dt><dd><tt>matplotlib supports the use of setp ("set property") and getp to set<br> -and get object properties, as well as to do introspection on the<br> -object For example, to set the linestyle of a line to be dashed, you<br> +and get <a href="__builtin__.html#object">object</a> properties, as well as to do introspection on the<br> +<a href="__builtin__.html#object">object</a> For example, to set the linestyle of a line to be dashed, you<br> can do<br> <br> >>> line, = plot([1,2,3])<br> Modified: trunk/htdocs/matplotlib.axes.html.template =================================================================== --- trunk/htdocs/matplotlib.axes.html.template 2008年05月30日 17:30:59 UTC (rev 5326) +++ trunk/htdocs/matplotlib.axes.html.template 2008年05月30日 17:34:24 UTC (rev 5327) @@ -4,7 +4,7 @@ <td valign=bottom> <br> <font color="#ffffff" face="helvetica, arial"> <br><big><big><strong><a href="matplotlib.html"><font color="#ffffff">matplotlib</font></a>.axes</strong></big></big></font></td ><td align=right valign=bottom -><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="file:/home/jdhunter/dev/lib/python2.5/site-packages/matplotlib/axes.py">/home/jdhunter/dev/lib/python2.5/site-packages/matplotlib/axes.py</a></font></td></tr></table> +><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="file:/home/jdhunter/dev/lib64/python2.5/site-packages/matplotlib/axes.py">/home/jdhunter/dev/lib64/python2.5/site-packages/matplotlib/axes.py</a></font></td></tr></table> <p></p> <p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> @@ -13,31 +13,30 @@ <font color="#fffff" face="helvetica, arial"><big><strong>Modules</strong></big></font></td></tr> <tr><td bgcolor="#aa55cc"><tt> </tt></td><td> </td> -<td width="100%"><table width="100%" summary="list"><tr><td width="25%" valign=top><a href="matplotlib.agg.html">matplotlib.agg</a><br> -<a href="matplotlib.cbook.html">matplotlib.cbook</a><br> -<a href="matplotlib.cm.html">matplotlib.cm</a><br> +<td width="100%"><table width="100%" summary="list"><tr><td width="25%" valign=top><a href="matplotlib.cbook.html">matplotlib.cbook</a><br> <a href="matplotlib.font_manager.html">matplotlib.font_manager</a><br> -<a href="matplotlib.numerix.npyma.html">matplotlib.numerix.npyma</a><br> +<a href="numpy.ma.html">numpy.ma</a><br> <a href="matplotlib.artist.html">matplotlib.artist</a><br> <a href="math.html">math</a><br> -</td><td width="25%" valign=top><a href="matplotlib.html">matplotlib</a><br> +<a href="matplotlib.html">matplotlib</a><br> <a href="matplotlib.axis.html">matplotlib.axis</a><br> -<a href="matplotlib.collections.html">matplotlib.collections</a><br> +</td><td width="25%" valign=top><a href="matplotlib.collections.html">matplotlib.collections</a><br> <a href="matplotlib.colors.html">matplotlib.colors</a><br> <a href="matplotlib.contour.html">matplotlib.contour</a><br> <a href="matplotlib.dates.html">matplotlib.dates</a><br> <a href="matplotlib.image.html">matplotlib.image</a><br> -</td><td width="25%" valign=top><a href="matplotlib.mlab.html">matplotlib.mlab</a><br> +<a href="matplotlib.mlab.html">matplotlib.mlab</a><br> <a href="matplotlib.legend.html">matplotlib.legend</a><br> -<a href="matplotlib.lines.html">matplotlib.lines</a><br> +</td><td width="25%" valign=top><a href="matplotlib.lines.html">matplotlib.lines</a><br> <a href="matplotlib.patches.html">matplotlib.patches</a><br> <a href="matplotlib.quiver.html">matplotlib.quiver</a><br> +<a href="matplotlib.scale.html">matplotlib.scale</a><br> <a href="matplotlib.table.html">matplotlib.table</a><br> <a href="matplotlib.text.html">matplotlib.text</a><br> -</td><td width="25%" valign=top><a href="matplotlib.ticker.html">matplotlib.ticker</a><br> -<a href="matplotlib.transforms.html">matplotlib.transforms</a><br> +<a href="matplotlib.ticker.html">matplotlib.ticker</a><br> +</td><td width="25%" valign=top><a href="matplotlib.transforms.html">matplotlib.transforms</a><br> +<a href="new.html">new</a><br> <a href="numpy.html">numpy</a><br> -<a href="sys.html">sys</a><br> <a href="warnings.html">warnings</a><br> </td></tr></table></td></tr></table><p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> @@ -47,22 +46,16 @@ <tr><td bgcolor="#ee77aa"><tt> </tt></td><td> </td> <td width="100%"><dl> -<dt><font face="helvetica, arial"><a href="matplotlib.artist.html#Artist">matplotlib.artist.Artist</a> +<dt><font face="helvetica, arial"><a href="matplotlib.artist.html#Artist">matplotlib.artist.Artist</a>(<a href="__builtin__.html#object">__builtin__.object</a>) </font></dt><dd> <dl> <dt><font face="helvetica, arial"><a href="matplotlib.axes.html#Axes">Axes</a> -</font></dt><dd> -<dl> -<dt><font face="helvetica, arial"><a href="matplotlib.axes.html#PolarAxes">PolarAxes</a> </font></dt></dl> </dd> -</dl> -</dd> <dt><font face="helvetica, arial"><a href="matplotlib.axes.html#SubplotBase">SubplotBase</a> </font></dt><dd> <dl> -<dt><font face="helvetica, arial"><a href="matplotlib.axes.html#PolarSubplot">PolarSubplot</a>(<a href="matplotlib.axes.html#SubplotBase">SubplotBase</a>, <a href="matplotlib.axes.html#PolarAxes">PolarAxes</a>) -</font></dt><dt><font face="helvetica, arial"><a href="matplotlib.axes.html#Subplot">Subplot</a>(<a href="matplotlib.axes.html#SubplotBase">SubplotBase</a>, <a href="matplotlib.axes.html#Axes">Axes</a>) +<dt><font face="helvetica, arial">AxesSubplot(<a href="matplotlib.axes.html#SubplotBase">SubplotBase</a>, <a href="matplotlib.axes.html#Axes">Axes</a>) </font></dt></dl> </dd> </dl> @@ -81,48 +74,27 @@ connect to are 'xlim_changed' and 'ylim_changed' and the callback<br> will be called with func(ax) where ax is the <a href="#Axes">Axes</a> instance<br> </tt></td></tr> <tr><td> </td> -<td width="100%">Methods defined here:<br> -<dl><dt><a name="Axes-__init__"><strong>__init__</strong></a>(self, fig, rect, axisbg<font color="#909090">=None</font>, frameon<font color="#909090">=True</font>, sharex<font color="#909090">=None</font>, sharey<font color="#909090">=None</font>, label<font color="#909090">=''</font>, **kwargs)</dt><dd><tt>Build an <a href="#Axes">Axes</a> instance in Figure with<br> -rect=[left, bottom, width,height in Figure coords<br> - <br> -adjustable: ['box' | 'datalim']<br> -alpha: the alpha transparency<br> -anchor: ['C', 'SW', 'S', 'SE', 'E', 'NE', 'N', 'NW', 'W']<br> -aspect: ['auto' | 'equal' | aspect_ratio]<br> -autoscale_on: boolean - whether or not to autoscale the viewlim<br> -axis_bgcolor: any matplotlib color - see help(colors)<br> -axisbelow: draw the grids and ticks below the other artists<br> -cursor_props: a (float, color) tuple<br> -figure: a Figure instance<br> -frame_on: a boolean - draw the axes frame<br> -label: the axes label<br> -navigate: True|False<br> -navigate_mode: the navigation toolbar button status: 'PAN', 'ZOOM', or None<br> -position: [left, bottom, width,height in Figure coords<br> -sharex : an <a href="#Axes">Axes</a> instance to share the x-axis with<br> -sharey : an <a href="#Axes">Axes</a> instance to share the y-axis with<br> -title: the title string<br> -visible: a boolean - whether the axes is visible<br> -xlabel: the xlabel<br> -xlim: (xmin, xmax) view limits<br> -xscale: ['log' | 'linear' ]<br> -xticklabels: sequence of strings<br> -xticks: sequence of floats<br> -ylabel: the ylabel strings<br> -ylim: (ymin, ymax) view limits<br> -yscale: ['log' | 'linear']<br> -yticklabels: sequence of strings<br> -yticks: sequence of floats</tt></dd></dl> +<td width="100%"><dl><dt>Method resolution order:</dt> +<dd><a href="matplotlib.axes.html#Axes">Axes</a></dd> +<dd><a href="matplotlib.artist.html#Artist">matplotlib.artist.Artist</a></dd> +<dd><a href="__builtin__.html#object">__builtin__.object</a></dd> +</dl> +<hr> +Methods defined here:<br> +<dl><dt><a name="Axes-__init__"><strong>__init__</strong></a>(self, fig, rect, axisbg<font color="#909090">=None</font>, frameon<font color="#909090">=True</font>, sharex<font color="#909090">=None</font>, sharey<font color="#909090">=None</font>, label<font color="#909090">=''</font>, **kwargs)</dt></dl> <dl><dt><a name="Axes-__str__"><strong>__str__</strong></a>(self)</dt></dl> -<dl><dt><a name="Axes-acorr"><strong>acorr</strong></a>(self, x, **kwargs)</dt><dd><tt>ACORR(x, normed=False, detrend=mlab.detrend_none, usevlines=False,<br> - maxlags=None, **kwargs)<br> +<dl><dt><a name="Axes-acorr"><strong>acorr</strong></a>(self, x, **kwargs)</dt><dd><tt>call signature::<br> + <br> + <a href="#Axes-acorr">acorr</a>(x, normed=False, detrend=mlab.detrend_none, usevlines=False,<br> + maxlags=None, **kwargs)<br> + <br> Plot the autocorrelation of x. If normed=True, normalize the<br> data but the autocorrelation at 0-th lag. x is detrended by<br> the detrend callable (default no normalization.<br> <br> -data are plotted as <a href="#Axes-plot">plot</a>(lags, c, **kwargs)<br> +data are plotted as ``<a href="#Axes-plot">plot</a>(lags, c, **kwargs)``<br> <br> return value is lags, c, line where lags are a length<br> 2*maxlags+1 lag vector, c is the 2*maxlags+1 auto correlation<br> @@ -148,7 +120,7 @@ <dl><dt><a name="Axes-add_artist"><strong>add_artist</strong></a>(self, a)</dt><dd><tt>Add any artist to the axes</tt></dd></dl> -<dl><dt><a name="Axes-add_collection"><strong>add_collection</strong></a>(self, collection, autolim<font color="#909090">=False</font>)</dt><dd><tt>add a Collection instance to <a href="#Axes">Axes</a></tt></dd></dl> +<dl><dt><a name="Axes-add_collection"><strong>add_collection</strong></a>(self, collection, autolim<font color="#909090">=True</font>)</dt><dd><tt>add a Collection instance to <a href="#Axes">Axes</a></tt></dd></dl> <dl><dt><a name="Axes-add_line"><strong>add_line</strong></a>(self, line)</dt><dd><tt>Add a line to the list of plot lines</tt></dd></dl> @@ -158,13 +130,15 @@ <dl><dt><a name="Axes-add_table"><strong>add_table</strong></a>(self, tab)</dt><dd><tt>Add a table instance to the list of axes tables</tt></dd></dl> -<dl><dt><a name="Axes-annotate"><strong>annotate</strong></a>(self, *args, **kwargs)</dt><dd><tt><a href="#Axes-annotate">annotate</a>(s, xy,<br> - xytext=None,<br> - xycoords='data',<br> - textcoords='data',<br> - arrowprops=None,<br> - **props)<br> +<dl><dt><a name="Axes-annotate"><strong>annotate</strong></a>(self, *args, **kwargs)</dt><dd><tt>call signature::<br> <br> + <a href="#Axes-annotate">annotate</a>(s, xy,<br> + xytext=None,<br> + xycoords='data',<br> + textcoords='data',<br> + arrowprops=None,<br> + **props)<br> + <br> Annotate the x,y point xy with text s at x,y location xytext<br> (xytext if None defaults to xy and textcoords if None defaults<br> to xycoords).<br> @@ -173,36 +147,47 @@ (see matplotlib.lines.Line2D) for the arrow that connects<br> annotation to the point. Valid keys are<br> <br> - - width : the width of the arrow in points<br> - - frac : the fraction of the arrow lengt... [truncated message content]
Revision: 5353 http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5353&view=rev Author: jdh2358 Date: 2008年06月02日 04:48:42 -0700 (2008年6月02日) Log Message: ----------- updates to site docs Modified Paths: -------------- trunk/htdocs/classdocs.html.template trunk/htdocs/convert.py trunk/htdocs/credits.html.template trunk/htdocs/faq.html.template trunk/htdocs/fonts.html.template trunk/htdocs/header.html.template trunk/htdocs/hthelpers.py trunk/htdocs/index.html.template trunk/htdocs/interactive.html.template trunk/htdocs/make.py trunk/htdocs/matplotlib.axes.html.template trunk/htdocs/matplotlib.backend_bases.html.template trunk/htdocs/matplotlib.backends.backend_agg.html.template trunk/htdocs/matplotlib.backends.backend_gtk.html.template trunk/htdocs/matplotlib.backends.backend_gtkagg.html.template trunk/htdocs/matplotlib.backends.backend_gtkcairo.html.template trunk/htdocs/matplotlib.backends.backend_ps.html.template trunk/htdocs/matplotlib.backends.backend_qt.html.template trunk/htdocs/matplotlib.backends.backend_qtagg.html.template trunk/htdocs/matplotlib.backends.backend_svg.html.template trunk/htdocs/matplotlib.backends.backend_tkagg.html.template trunk/htdocs/matplotlib.backends.backend_wx.html.template trunk/htdocs/matplotlib.backends.backend_wxagg.html.template trunk/htdocs/matplotlib.cbook.html.template trunk/htdocs/matplotlib.cm.html.template trunk/htdocs/matplotlib.colors.html.template trunk/htdocs/matplotlib.dates.html.template trunk/htdocs/matplotlib.finance.html.template trunk/htdocs/matplotlib.lines.html.template trunk/htdocs/matplotlib.mathtext.html trunk/htdocs/matplotlib.mathtext.html.template trunk/htdocs/matplotlib.mlab.html.template trunk/htdocs/matplotlib.numerix.html.template trunk/htdocs/matplotlib.pylab.html.template trunk/htdocs/matplotlib.rcsetup.html.template trunk/htdocs/matplotlib.ticker.html.template trunk/htdocs/matplotlib.units.html.template trunk/htdocs/matplotlibrc trunk/htdocs/screenshots/tex_demo.py trunk/htdocs/screenshots.html.template trunk/htdocs/toolkits.html.template trunk/htdocs/tut/mathtext_tut.png trunk/htdocs/tutorial.html.template trunk/htdocs/whats_new.html.template Added Paths: ----------- trunk/htdocs/logo2.png trunk/htdocs/logo2.py Modified: trunk/htdocs/classdocs.html.template =================================================================== --- trunk/htdocs/classdocs.html.template 2008年06月02日 10:10:40 UTC (rev 5352) +++ trunk/htdocs/classdocs.html.template 2008年06月02日 11:48:42 UTC (rev 5353) @@ -5,27 +5,37 @@ ('axes', 'Axes, Subplot and Axis classes'), ('backend_bases', 'The base classed for all the classes the backend must override'), ('cbook', 'Some cookbook utility functions'), + ('cm', 'Colormaps'), ('collections', 'Fast rendering of collections of lines and polygons'), + ('colorbar', 'Colorbar support'), ('colors', 'Color parsers'), - ('cm', 'Colormaps'), + ('contour', 'Contouring routines'), ('dates', 'Support for date plots and converters'), ('figure', 'The Figure classes'), ('finance', 'Classes for obtaining and plotting financial data'), ('font_manager', 'Cross platform font finding and properties'), + ('fontconfig_pattern', 'A module for parsing a fontconfig pattern'), ('ft2font', 'Freetype2 interface'), ('image', 'The Image class'), ('legend', 'The Legend class'), ('lines', 'The Line2D classes'), ('mathtext', 'Use TeX expressions in text'), ('mlab', 'Non-graphical matlab® funcs to compliment MLab'), + ('mpl', 'An import helper that imports much of the mpl namespace'), ('numerix', 'Choose Numeric, numarray or numpy'), ('patches', 'Rectangles, polygons, circles, etc...'), + ('path', 'Data structures to represent graphics paths'), ('pylab', 'The matlab® functional interface'), + ('pyplot', 'The state-machine proceedural interface to the matplotlib API'), + ('quiver', 'Classes to support quiver plots'), + ('rcsetup', 'Support for matplotlib configuration'), + ('scale', 'The coordinate scaling infrastructure'), ('table', 'Table class'), ('text', 'Text class'), ('texmanager', 'Interface to support using TeX for text'), ('ticker', 'Support for tick locating and formatting'), ('transforms', 'Bounding boxes, transformations'), + ('type1font', 'A class representing a Type 1 font'), ('units', 'Support for custom objects and unit transformations'), ('widgets', 'GUI neutral widgets'), ('backends.backend_agg', 'The Agg backend'), Modified: trunk/htdocs/convert.py =================================================================== --- trunk/htdocs/convert.py 2008年06月02日 10:10:40 UTC (rev 5352) +++ trunk/htdocs/convert.py 2008年06月02日 11:48:42 UTC (rev 5353) @@ -18,7 +18,7 @@ return sh.getvalue() class NewsBox: - def __init__(self, body, title='News Flash', bgcolor='red'): + def __init__(self, body, title='News Flash', bgcolor='#9DBCDA'): self.body = body self.title = title self.bgcolor = bgcolor @@ -36,7 +36,7 @@ s = '<table width=100% border=1 cellpadding=1 ' +\ 'cellspacing=1>\n' s += self.format_header() - s += '<tr><td valign="top" bgcolor=#efefef>\n' + s += '<tr><td valign="top" bgcolor=#EFEFEF>\n' s += '<font color="black">%s</font>'%self.body s += '</td></tr>\n' s += '</table>\n' @@ -49,7 +49,7 @@ def format_header(self): return """ - <tr><td bgcolor=#bfbfbf align="left"> + <tr><td bgcolor=#9DBCDA align="left"> <font class="tableheading"> <b>%s</b> </font> @@ -61,7 +61,7 @@ s = '<table width=100% border=1 cellpadding=1 ' +\ 'cellspacing=1>\n' s += self.format_header() - s += ' <tr><td valign="top" bgcolor=#efefef>\n' + s += ' <tr><td valign="top" bgcolor=#EFEFEF>\n' for text, link in self.links: s += ' <a href=%s>%s</a><br>\n' % (link, text) @@ -188,7 +188,7 @@ # re-add news to the params dict 'tables' entry below for news news1= NewsBox("""matplotlib <a -href=http://sourceforge.net/project/showfiles.php?group_id=80706&package_id=278194&release_id=603020>0.98.0</a> is a major release which requires python2.4 and numpy 1.1. It contains a number of internal improvements and may require some power users to update their code; see <a href=MIGRATION.txt>migration</a> and <a href=API_CHANGES>API_CHANGES</a>. We are supporting a maintenance branch of the older code available at matplotlib <a +href=http://sourceforge.net/project/showfiles.php?group_id=80706&package_id=278194&release_id=603020>0.98.0</a> is a major release which requires python2.4 and numpy 1.1. It contains significant improvements and may require some advanced users to update their code; see <a href=MIGRATION.txt>migration</a> and <a href=API_CHANGES>API_CHANGES</a>. We are supporting a maintenance branch of the older code available at matplotlib <a href=http://sourceforge.net/project/showfiles.php?group_id=80706&package_id=82474&release_id=603021>0.91.3</a>""", title='New release') @@ -210,9 +210,9 @@ table2 = LinkBox(header='Documentation', links=( ('Tutorial', 'tutorial.html'), ("User's Guide ", 'users_guide_%s.pdf'%matplotlib.__version__), - ('API tutorial', 'pycon/event_handling_tut.pdf'), - ('Event handling', 'pycon/artist_api_tut.pdf'), - ("API ", 'api.pdf'), + ('API tutorial', 'pycon/artist_api_tut.pdf'), + ('Event handling', 'pycon/event_handling_tut.pdf'), + ("API Reference", 'api.pdf'), ('FAQ', 'faq.html'), ('Cookbook / wiki', 'http://www.scipy.org/wikis/topical_software/MatplotlibCookbook'), ('pylab interface', 'pylab_commands.html'), Modified: trunk/htdocs/credits.html.template =================================================================== --- trunk/htdocs/credits.html.template 2008年06月02日 10:10:40 UTC (rev 5352) +++ trunk/htdocs/credits.html.template 2008年06月02日 11:48:42 UTC (rev 5353) @@ -114,7 +114,7 @@ most aspects of matplotlib.</li> <li>Daishi Harada added support for "Dashed Text". See <a - href=examples/dashpointlabel.py>dashpointlabel.py</a> and <a + href=examples/pylab/dashpointlabel.py>dashpointlabel.py</a> and <a href=matplotlib.text.html#TextWithDash>TextWithDash</a></li> <li>Nicolas Young added support for byte images to imshow, which are @@ -140,7 +140,7 @@ support, implementing Knuth's box layout algorithms, saving to file-like objects across backends, and is responsible for numerous bug-fixes, much better font and unicode support, and feature and - performance enhancements across the matplotlib code base. He also rewrote the transformation infrastructure to support custom projections and scales/li> + performance enhancements across the matplotlib code base. He also rewrote the transformation infrastructure to support custom projections and scales</li> Modified: trunk/htdocs/faq.html.template =================================================================== --- trunk/htdocs/faq.html.template 2008年06月02日 10:10:40 UTC (rev 5352) +++ trunk/htdocs/faq.html.template 2008年06月02日 11:48:42 UTC (rev 5353) @@ -65,7 +65,7 @@ matplotlib</a> and this <a href=faq.html#FREEZE>faq</a>. So open up a UNIX shell (or a DOS command prompt) and cd into a directory containing a minimal example in a file. Something like <a -href=examples/simple_plot.py>simple_plot.py</a> or just this +href=examples/pylab/simple_plot.py>simple_plot.py</a> or just this <pre> from pylab import * @@ -130,7 +130,7 @@ (matplotlib-0.65 or later). The default order is patches, lines, text, with collections of lines and collections of patches appearing at the same level as regular lines and patches, respectively. See <a -href=examples/zorder_demo.py>examples/zorder_demo.py</a>. +href=examples/pylab/zorder_demo.py>zorder_demo.py</a>. """), ('TOOLBAR2', @@ -185,7 +185,7 @@ and then the errorbar command will pick a "locator" to handle ticking and viewport scaling appropriately from the outset. This is the -approach taken in <a href=examples/log_bar.py>log_bar.py</a>. +approach taken in <a href=examples/pylab/log_bar.py>log_bar.py</a>. """), ('EQUAL', @@ -344,12 +344,12 @@ href=http://matplotlib.sf.net/examples>examples</a> subdirectory. If you are working with date plots you'll find several date demos with obvious filenames like <a -href=examples/date_demo1.py>examples/date_demo1.py</a>. Likewise, +href=examples/pylab/date_demo1.py>date_demo1.py</a>. Likewise, you'll find examples for images (<a -href=examples/image_demo.py>examples/image_demo.py</a>), contouring -(<a href=examples/contour_demo.py>examples/contour_demo.py</a>, using +href=examples/pylab/image_demo.py>image_demo.py</a>), contouring +(<a href=examples/pylab/contour_demo.py>contour_demo.py</a>, using matplotlib with a graphical user interface (<a -href=examples/embedding_in_wx.py>examples/embedding_in_wx.py</a> and +href=examples/pylab/embedding_in_wx.py>examples/user_interfaces/embedding_in_wx.py</a> and many more. At last count, there were 116 examples. Because these are not included with the standard windows installer, they are often overlooked, which is why I emphasize them here.<p> @@ -501,7 +501,7 @@ </li> <li><a - href=examples/pythonic_matplotlib.py>pythonic_matplotlib.py</a> + href=examples/pylab/pythonic_matplotlib.py>pythonic_matplotlib.py</a> describes the translation from the matlab style interface to the pythonic, OO interface.</li> @@ -584,7 +584,7 @@ linewidth, fontsize, etc, use the <a href=matplotlib.pyplot.html#-rc>rc</a> command. This changes the default for the rest of the session, or until you issue another rc -command. See <a examples/customize_rc.py>customize_rc.py</a> for +command. See <a examples/pylab/customize_rc.py>customize_rc.py</a> for example usage."""), @@ -639,7 +639,7 @@ 'Can I plot data with two y axes scales?', r""" As of matplotlib-0.53, there is support for this. See <a -href=examples/two_scales.py>two_scales.py</a>. +href=examples/pylab/two_scales.py>two_scales.py</a>. """), ('MATHTEXT', @@ -778,8 +778,8 @@ ('DYNAMIC', 'Can matplotlib do dynamic plots, like digital oscilloscopes or animations?', """ -Absolutely. See for example, <a href=examples/anim.py>anim.py</a> and <a -href=examples/system_monitor.py>system_monitor.py</a>"""), +Absolutely. See for example, <a href=examples/animation/anim.py>anim.py</a> and <a +href=examples/animation/system_monitor.py>system_monitor.py</a>"""), ('AXES', 'Can I change the size of the subplots', @@ -789,7 +789,7 @@ For more fine-grained control, you can position axes anywhere you want in any size using the axes command. See the <a href=matplotlib.pyplot.html#-axes>axes command</a> and the example -<a href=examples/axes_demo.py>axes_demo.py<a/>.<p> +<a href=examples/pylab/axes_demo.py>axes_demo.py<a/>.<p> """), @@ -1030,7 +1030,7 @@ If you need a lot of control over GUI properties, you may want to skip the pylab interface and use the matplotlib API directly, eg build a -GTK app which embeds matplotlib. See examples/embedding_in*.py in the +GTK app which embeds matplotlib. See examples/user_interfaces/embedding_in*.py in the matplotlib src distribution or at <a href=http://matplotlib.sf.net/examples>examples</a> explaining how to embed matplotlib in your GUI of choice. Modified: trunk/htdocs/fonts.html.template =================================================================== --- trunk/htdocs/fonts.html.template 2008年06月02日 10:10:40 UTC (rev 5352) +++ trunk/htdocs/fonts.html.template 2008年06月02日 11:48:42 UTC (rev 5353) @@ -50,9 +50,6 @@ href=matplotlib.font_manager.html#FontProperties>FontProperties</a> class is used to describe these properties.<p> -See <a href=examples/font_properties_demo.py>font_properties_demo.py</a> -for an example setting the default font property and changing it in the -middle of the script. <h5>font family</h5> Modified: trunk/htdocs/header.html.template =================================================================== --- trunk/htdocs/header.html.template 2008年06月02日 10:10:40 UTC (rev 5352) +++ trunk/htdocs/header.html.template 2008年06月02日 11:48:42 UTC (rev 5353) @@ -8,7 +8,7 @@ <table > <tr> <td colspan=3 valign=top align=left><img align=left - src=screenshots/logo.png></td> + src=logo2.png></td> </tr> <tr> <td valign=top width=20%> Modified: trunk/htdocs/hthelpers.py =================================================================== --- trunk/htdocs/hthelpers.py 2008年06月02日 10:10:40 UTC (rev 5352) +++ trunk/htdocs/hthelpers.py 2008年06月02日 11:48:42 UTC (rev 5353) @@ -1,8 +1,8 @@ modules = ( 'matplotlib.afm', 'matplotlib.artist', + 'matplotlib.axis', 'matplotlib.axes', - 'matplotlib.axis', 'matplotlib.backend_bases', 'matplotlib.backends.backend_agg', 'matplotlib.backends.backend_cairo', @@ -36,17 +36,22 @@ 'matplotlib.lines', 'matplotlib.mathtext', 'matplotlib.mlab', + 'matplotlib.mpl', 'matplotlib.numerix', 'matplotlib.patches', + 'matplotlib.path', 'matplotlib.pylab', 'matplotlib.pyplot', 'matplotlib.quiver', 'matplotlib.rcsetup', + 'matplotlib.scale', 'matplotlib.table', 'matplotlib.texmanager', 'matplotlib.text', 'matplotlib.ticker', 'mpl_toolkits.basemap.basemap', + 'mpl_toolkits.exceltools', + 'mpl_toolkits.gtktools', 'matplotlib.transforms', 'matplotlib.type1font', 'matplotlib.units', Modified: trunk/htdocs/index.html.template =================================================================== --- trunk/htdocs/index.html.template 2008年06月02日 10:10:40 UTC (rev 5352) +++ trunk/htdocs/index.html.template 2008年06月02日 11:48:42 UTC (rev 5353) @@ -1,3 +1,4 @@ + from hthelpers import get_mpl_commands all_commands = get_mpl_commands() @@ -6,10 +7,9 @@ @header@ -<a href=