matplotlib-devel

What's new in matplotlib 0.53
Improved font manager and support
Paul Barrett has thoroughly overhauled font support. FontTools and
ttfquery are no longer required for font finding as matplotlib now
has a completely freestanding freetype2 implementation and font
finder. Among other things, this should enable you to specify fonts
in your scripts and matplotlibrc file and generate consistent
figures across backends and operating systems. The font finder
algorithm and implementation are based on the W3C standard
http://www.w3.org/TR/1999/REC-CSS1-19990111.
See the font manager module documentation, the fonts documentation
http://matplotlib.sf.net/fonts.html and the updated .matplotlibrc
file for more details; please update your .matplotlibrc. Thanks
Paul!
Backend WXAgg
Antigrain rendering to wxpython applications and figure windows. Now
wx users have access to all the latest matplotlib functionality,
including mathtext, antialised drawing, alpha blending and image
support.
Major and minor ticks
Full support for major and minor ticks with a bevy of more
intelligent tick locators supplied in the ticker module. Fully
customizable and user definable tick locators and formatters. See
major_minor_demo1.py and major_minor_demo2.py. The default tick
labeler is much more intelligent in choosing good tick locations.
See http://matplotlib.sf.net/matplotlib.ticker.html
Date plots
A new command a plot_date command for plotting date dependent data;
see http://matplotlib.sf.net/screenshots.html#date_demo. Converters
supplied in the dates module allow you to work with a variety of
datetime instances. Custom date locators and formatters allow you to
place major and minor ticks by minute, hour, weekday, month, year,
etc, and use strftime format strings to format the ticks. See
examples date_demo1.py and date_demo2.py. The dates documentation
provides an overview and guide to with dates -
see http://matplotlib.sf.net/matplotlib.dates.html.
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. Thanks to Todd Miller for the PS work!
Changes to matplotlibrc
Many features added to the default config file for font support,
tkagg windowing in win32, and more. Please use the new file at
http://matplotlib.sf.net/.matplotlibrc. By default, the installer
will overwrite the existing file in the install path, so if you want
to preserve your's, please move it to your HOME dir and set the
environment variable if necessary.
load and save commands
Helper functions for loading and saving ASCII arrays. See load and
save in the matlab interface.
Two scales on the same axes
Added some features to the axis and ticks to allow two plots with
different scales on the "same" axes with different scales, ticks and
labels on the left and right side of the x axis. To see why same is
quoted, see examples/two_scales.py.
finance module
The finance module includes a function to fetch quotes from yahoo,
to draw candlestick plots, and to draw vertical line plots for
high-low range with open-close ticks to the left and right. I'm
hoping that user contributions will make up the bulk of this module
since I'm not a finance guy! See
http://matplotlib.sf.net/screenshots.html#date_demo.
http://matplotlib.sourceforge.net

I just uninstalled the 0.53b release and installed 0.53
There's still a problem on my Win98 system, but now it seems related to the
new font manager:
>>> from matplotlib.matlab import *
Traceback (most recent call last):
File "<pyshell#0>", line 1, in -toplevel-
from matplotlib.matlab import *
File "C:\APPS\PYTHON23\Lib\site-packages\matplotlib\matlab.py", line 128,
in -toplevel-
from axes import Axes
File "C:\APPS\PYTHON23\Lib\site-packages\matplotlib\axes.py", line 10, in
-toplevel-
from axis import XTick, YTick, XAxis, YAxis
File "C:\APPS\PYTHON23\Lib\site-packages\matplotlib\axis.py", line 22, in
-toplevel-
from font_manager import FontProperties
File "C:\APPS\PYTHON23\Lib\site-packages\matplotlib\font_manager.py",
line 885, in -toplevel-
fontManager = FontManager()
File "C:\APPS\PYTHON23\Lib\site-packages\matplotlib\font_manager.py",
line 740, in __init__
self.ttffiles = findSystemFonts(paths) + findSystemFonts()
File "C:\APPS\PYTHON23\Lib\site-packages\matplotlib\font_manager.py",
line 159, in findSystemFonts
for f in win32InstalledFonts(fontdir):
File "C:\APPS\PYTHON23\Lib\site-packages\matplotlib\font_manager.py",
line 107, in win32InstalledFonts
if not local:
UnboundLocalError: local variable 'local' referenced before assignment
Gary
*********** REPLY SEPARATOR ***********
On 21/04/2004 at 09:33 John Hunter wrote:
> What's new in matplotlib 0.53
>
> Improved font manager and support
>
> Paul Barrett has thoroughly overhauled font support. FontTools and
> ttfquery are no longer required for font finding as matplotlib now
> has a completely freestanding freetype2 implementation and font
> finder. Among other things, this should enable you to specify fonts
> in your scripts and matplotlibrc file and generate consistent
> figures across backends and operating systems. The font finder
> algorithm and implementation are based on the W3C standard
> http://www.w3.org/TR/1999/REC-CSS1-19990111.
>
> See the font manager module documentation, the fonts documentation
> http://matplotlib.sf.net/fonts.html and the updated .matplotlibrc
> file for more details; please update your .matplotlibrc. Thanks
> Paul!
>
> Backend WXAgg
>
> Antigrain rendering to wxpython applications and figure windows. Now
> wx users have access to all the latest matplotlib functionality,
> including mathtext, antialised drawing, alpha blending and image
> support.
>
> Major and minor ticks
>
> Full support for major and minor ticks with a bevy of more
> intelligent tick locators supplied in the ticker module. Fully
> customizable and user definable tick locators and formatters. See
> major_minor_demo1.py and major_minor_demo2.py. The default tick
> labeler is much more intelligent in choosing good tick locations.
> See http://matplotlib.sf.net/matplotlib.ticker.html
>
> Date plots
>
> A new command a plot_date command for plotting date dependent data;
> see http://matplotlib.sf.net/screenshots.html#date_demo. Converters
> supplied in the dates module allow you to work with a variety of
> datetime instances. Custom date locators and formatters allow you to
> place major and minor ticks by minute, hour, weekday, month, year,
> etc, and use strftime format strings to format the ticks. See
> examples date_demo1.py and date_demo2.py. The dates documentation
> provides an overview and guide to with dates -
> see http://matplotlib.sf.net/matplotlib.dates.html.
>
> 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. Thanks to Todd Miller for the PS work!
>
> Changes to matplotlibrc
>
> Many features added to the default config file for font support,
> tkagg windowing in win32, and more. Please use the new file at
> http://matplotlib.sf.net/.matplotlibrc. By default, the installer
> will overwrite the existing file in the install path, so if you want
> to preserve your's, please move it to your HOME dir and set the
> environment variable if necessary.
>
> load and save commands
>
> Helper functions for loading and saving ASCII arrays. See load and
> save in the matlab interface.
>
> Two scales on the same axes
>
> Added some features to the axis and ticks to allow two plots with
> different scales on the "same" axes with different scales, ticks and
> labels on the left and right side of the x axis. To see why same is
> quoted, see examples/two_scales.py.
>
> finance module
>
> The finance module includes a function to fetch quotes from yahoo,
> to draw candlestick plots, and to draw vertical line plots for
> high-low range with open-close ticks to the left and right. I'm
> hoping that user contributions will make up the bulk of this module
> since I'm not a finance guy! See
> http://matplotlib.sf.net/screenshots.html#date_demo.
>
>
> http://matplotlib.sourceforge.net
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by: IBM Linux Tutorials
> Free Linux tutorial presented by Daniel Robbins, President and CEO of
> GenToo technologies. Learn everything from fundamentals to system
> administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
> _______________________________________________
> Matplotlib-devel mailing list
> Matplotlib-devel@...
> https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

>>>>> "gary" == gary ruben <gruben@...> writes:
gary> I just uninstalled the 0.53b release and installed 0.53
gary> There's still a problem on my Win98 system, but now it seems
gary> related to the new font manager:
This is a bug (clearly!). I didn't catch it in my tests because it
only arises when you get an OSError on a win32 registry call, which I
never got. I believe Paul lifted this section of the code from
ttfquery. For a quick fix, in the win32InstalledFonts function, try
replacing
try:
local = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, fontdir)
except OSError:
pass
with
try:
local = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, fontdir)
except OSError:
continue
and let me know how things go.
Paul, is the continue the correct behavior here?
Thanks for the report,
JDH

Hi John and Paul,
I changed the 'pass' to a 'continue' and a different problem has revealed
itself. Now, in lieu of any plot window, I get a Windows dialog with title
'Windows Visual C++ Runtime Library'
and content
Runtime Error
Program C:\APPS\PYTHON23\PYTHONW.EXE
abnormal program termination
Clicking the OK then generates a page fault. This seems a bit nasty. When I
have time later today, I'll see what happens under Win2000 on my laptop. I
should probably try another backend too.
Gary
*********** REPLY SEPARATOR ***********
On 21/04/2004 at 10:04 John Hunter wrote:
> >>>>> "gary" == gary ruben <gruben@...> writes:
>
> gary> I just uninstalled the 0.53b release and installed 0.53
> gary> There's still a problem on my Win98 system, but now it seems
> gary> related to the new font manager:
>
> This is a bug (clearly!). I didn't catch it in my tests because it
> only arises when you get an OSError on a win32 registry call, which I
> never got. I believe Paul lifted this section of the code from
> ttfquery. For a quick fix, in the win32InstalledFonts function, try
> replacing
>
> try:
> local = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, fontdir)
> except OSError:
> pass
>
> with
>
> try:
> local = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, fontdir)
> except OSError:
> continue
>
> and let me know how things go.
>
> Paul, is the continue the correct behavior here?
>
> Thanks for the report,
> JDH
------------------------------------
Gary Ruben gruben@...
<http://users.bigpond.net.au/gazzar&gt;

>>>>> "gary" == gary ruben <gruben@...> writes:
gary> Hi John and Paul, I changed the 'pass' to a 'continue' and a
gary> different problem has revealed itself. Now, in lieu of any
gary> plot window, I get a Windows dialog with title 'Windows
gary> Visual C++ Runtime Library'
gary> and content
gary> Runtime Error Program C:\APPS\PYTHON23\PYTHONW.EXE abnormal
gary> program termination
gary> Clicking the OK then generates a page fault. This seems a
gary> bit nasty. When I have time later today, I'll see what
gary> happens under Win2000 on my laptop. I should probably try
gary> another backend too.
Hi Gary,
I'm just including your last email to the dev list so others will know
it's taken care of
From: "gary ruben" <gruben@...>
Subject: more matplotlib error info
To: jdhunter@...
Cc: barrett@...
Date: Thu, 22 Apr 2004 19:52:55 +1000
Hi John and Paul,
Paul; the font manager problem seems to be fixed by John's suggestion, so
you can ignore my previous offlist email which mentions a page fault. I've
isolated it to a problem with Agg, which I'll post the symptoms of to the
users list.
Gary