Yep, looks like the trunk has fixed the contourf() issue.
Unfortunately there also seems to be some new incompatibility with the
Basemap toolkit, even after re-installing Basemap from source. I get:
AttributeError: Axes.frame was removed in favor of Axes.spines
when I attempt to call:
drawmapboundary(fill_color=white)
Error output below:
/Users/zane/svn/googlecode/satstress/satstress/nsrhist.pyc in
makefigs(dbar_max, maps, hists, examples, stats, stress, tpw,
lindensity, all, save_format)
774 if maps is True: #{{{2
775 print(Plotting Mapped Lineaments, fit to NSR stresses)
-- 776 FitMap(nsrlins, nbins=9, titlestr=global lins, fit to
NSR, dbar_max=dbar_max, outfile=figure_outfiles['FitMap_Mapped'])
777 print(Plotting Pre-TPW Lineaments, fit to NSR stresses)
778 FitMap(tpwlins, nbins=9, titlestr=pre-TPW lins, fit
to NSR, dbar_max=dbar_max, outfile=figure_outfiles['FitMap_PreTPW'])
/Users/zane/svn/googlecode/satstress/satstress/nsrhist.pyc in
FitMap(lins, titlestr, lin_cm, nbins, stresscentric, outfile,
dbar_max, showbad, derotate)
1005 linfitmap.drawmeridians(range(llcrnrlon,urcrnrlon+1,gridspace),
labels=[1,0,0,1])
1006 linfitmap.drawparallels(range(llcrnrlat,urcrnrlat+1,gridspace),
labels=[1,0,0,1])
- 1007 linfitmap.drawmapboundary(fill_color=white)
1008 map_ax = fig.axes[0]
1009
/Library/Python/2.5/site-packages/mpl_toolkits/basemap/__init__.pyc in
drawmapboundary(self, color, linewidth, fill_color, zorder, ax)
1263 else: # all other projections are rectangular.
1264 # use axesPatch for fill_color, frame for border line props.
- 1265 ax.frame.set_linewidth(linewidth)
1266 if self.projection not in ['geos','ortho']:
1267 if fill_color is not None:
/Library/Python/2.5/site-packages/matplotlib/axes.pyc in get_frame(self)
984
985 def get_frame(self):
-- 986 raise AttributeError('Axes.frame was removed in favor
of Axes.spines')
987 frame = property(get_frame)
988
AttributeError: Axes.frame was removed in favor of Axes.spines
In [3]: import mpl_toolkits.basemap
In [4]: mpl_toolkits.basemap.__version__
Out[4]: '0.99.4'
On Tue, Jun 16, 2009 at 7:29 AM, Michiel de Hoonmjldeh...@yahoo.com wrote:
I can't reproduce this error with the current code in SVN trunk, but I
remember seeing this bug a while ago. So I'm guessing that this bug has
already been fixed in SVN. Zane, could you try installing the latest
matplotlib from trunk and see if you still see this bug?
--Michiel
--- On Mon, 6/15/09, Michael Droettboom md...@stsci.edu wrote:
From: Michael Droettboom md...@stsci.edu
Subject: Re: [Matplotlib-users] New contourf() drawing polygon boundaries
for some reason?
To: z...@amateurearthling.org, matplotlib-users
matplotlib-users@lists.sourceforge.net, Michiel de Hoon
mjldeh...@yahoo.com
Date: Monday, June 15, 2009, 6:08 PM
Thanks for the thorough investigation.
Michiel: can you look into why the macosx backend is
drawing the
strokes around the polygons? Probably as simple as
inadvertently
ignoring an argument.
I'll look into the path simplification-related issues.
Cheers,
Mike
On 06/15/2009 03:29 PM, Zane Selvans wrote:
Yes. By far the worst of these behaviors is the
macosx GUI output. I
could see the other ones just being the way it's
supposed to look.
Here's a summary:
backend: macosx; path.simplify: (false|true) GUI =
black borders to
drawn polygons (incl. contour region crossing lines, very
bad)
http://zaneselvans.org/dropbox/contourf_backendmacosx.png
backend: agg (PNG output) path.simplify: (true|false) =
somewhat
visible borders between polygons (esp. adjacent to
contrasting colors)
http://zaneselvans.org/dropbox/contourf_simplifytrue.png
http://zaneselvans.org/dropbox/contourf_simplifyfalse.png
backend: pdf (PDF output) path.simplify: true =
reliably visible
irregularities (but probably this is somewhat expected with
SVG
output)
http://zaneselvans.org/dropbox/contourf_simplifytrue.pdf
backend: pdf (PDF output) path.simplify: false =
infinitessimally
thin lines of background color visible between contour
filled regions.
http://zaneselvans.org/dropbox/contourf_simplifyfalse.pdf
And here's what I used to generate them:
def broken_contourf():
Simple demonstration that filled contour plots are
broken.
Looking at the PDF and PNG output using the macosx
backend, everything is
fine. It's only the GUI output which is for some
reason outlining the
polygons in the filled contours.
from numpy.random import uniform, seed
from matplotlib.mlab import griddata
import matplotlib.pyplot as plt
import numpy as np
# make up data.
#npts = int(raw_input('enter # of random points to
plot:'))
seed(-1)
npts = 200
x = uniform(-2,2,npts)
y = uniform(-2,2,npts)