From: John H. <jdh...@ac...> - 2005-06-07 16:23:24
|
Win32 Warning: This is the first release I've done since my windows build syste dies and I had to reinstall a bunch of tools and some version numbers in my GTK build environment changed (eg my GTK setup). Let me know if you encounter any problems. As always, try removing site-packages/matplotlib and reinstalling before reporting any problems TeX support : Now you can (optionally) use TeX to handle *all* of the text elements in your figure with the rc param text.usetex (*Agg and PS only). PS support requires tex, dvips and Ghostscript 8.51 (older versions do not work properly -- test your version with 'gs --version'). Agg support requires tex and dvipng. A directory ~/.tex.cache is created where support files are cached for later reuse. We opted to ues TeX rather than LaTeX because it is faster and can do all the things we thought useful for figure text snippets. See http://matplotlib.sf.net/screenshots.html#tex_demo and http://matplotlib.sf.net/matplotlib.texmanager.html. There are several new rc params for configuring tex/latex support # use tex/latex for all text handling text.usetex : False # tex is faster, but latex is required to use special font # packages. See font.latex.package text.tex.engine : latex # This must be an available LaTeX font package, # like 'times' or 'pslatex' ; only applies if text.usetex # is true font.latex.package : type1cm Special thanks to Darren Dale for lots of hair-pulling work customizing, enhancing and debugging the ps backend for LaTeX support. Masked arrays: Support for masked arrays in line plots, pcolor and contours. There are some problems with filled contours and masked arrays. Thanks Eric Firing and Jeffrey Whitaker. Contour levels arg changes: see http://matplotlib.sf.net/API_CHANGES for details Byte images: Much faster imaeg loading for MxNx4 or MxNx3 UInt8 images, which bypasses the memory and CPU intensive integer/floating point conversions. Nicolas Girard New image resize options interpolation options. New values for the interp kwarg are 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos', 'blackman' See help(imshow) for details, particularly the interpolation, filternorm and filterrad kwargs. Text and dashes - Daishi Harada contributed a patch for connecting text to points with lines. See examples/dashpointlabel.py and examples/dashtick.py Fast markers on win32: The marker cache optimization is finally available for win32, after an agg bug was found and fixed (thanks Maxim!). Line marker plots should be considerably faster now on win32. set deprecated: use setp instead; a simple, mostly braindead, conversion script is provided below Qt in ipython/pylab: You can now use qt in ipython pylab mode. Thanks Fernando Perez and the Orsay team! Agg wrapper proper: Started work on a proper agg wrapper to expose more general agg functionality in mpl. See examples/agg_test.py. Lots of wrapping remains to be done. New scalar formatter: Darren Dale did a lot of work to make scalar formatting smarter in pathalogical cases. See examples/newscalarformatter_demo.py Small features: linewidth and faceted kwarg to scatter to control edgewidth and color, autolegending now inspects line segments in addition to vertices, upgraded to agg23, new example showing how to use line collections examples/line_collection.py, fixed antialiased property setting in agg, added a postscript papersize rc option, added an example showing how to embed mpl in a qt app examples/embedding_in_qt.py, arrow keys now exposed in mpl's GUI neutral event handling, added "among" kwarg to axes picker function to limit picks, added autoscale_on property to Axes to control whether or not autoscaling is done. Bug fixes: fixed a contour masked array bug, contour memory leak http://matplotlib.sf.net # Here is a script to recursively convert set and get to setp and # getp. Please backup entire directory recursively before # running this script from matplotlib.cbook import listFiles for fname in listFiles('.', '*.py'): lines = [] cnt = 0 for line in file(fname): if line.lstrip().startswith('set('): line = line.replace('set(', 'setp(') cnt +=1 if line.lstrip().startswith('get('): line = line.replace('get(', 'getp(') cnt +=1 lines.append(line) file(fname, 'w').writelines(lines) print '%s\t: %d replacements'%(fname,cnt) |