SourceForge logo
SourceForge logo
Menu

[matplotlib-devel] Bug with setp and clim

From: David H. <dav...@gm...> - 2007年01月26日 20:50:53
Hi,
unles I'm doing something stupid, setp is buggy.
I'm creating a bunch of images using imshow and I want the colormap to be
consistent among images. So once they're all drawn, I want to uniformize the
color scale. But
>>> setp(ax.images, clim= [0,1])
does not work because it sets vmin to [0,1] and doesn't affect vmax.
On the other hand,
>>> ax.images[0].set_clim([0,1])
works fine.
Should I file a ticket ?
David
In [1]: ax = axes()
In [2]: ax.imshow(rand(10,10))
Out[2]: <matplotlib.image.AxesImage instance at 0x2aaaad22a830>
In [3]: setp(ax.images, 'clim', [0,1])
---------------------------------------------------------------------------
exceptions.ValueError Traceback (most recent
call last)
/usr/local/lib/python2.4/site-packages/matplotlib/backends/backend_gtk.py in
expose_event(self, widget, event)
 282 x, y, w, h = self.allocation
 283 self._pixmap_prepare (w, h)
--> 284 self._render_figure(self._pixmap, w, h)
 285 self._need_redraw = False
 286
/usr/local/lib/python2.4/site-packages/matplotlib/backends/backend_gtkagg.py
in _render_figure(self, pixmap, width, height)
 71 def _render_figure(self, pixmap, width, height):
 72 if DEBUG: print 'FigureCanvasGTKAgg.render_figure'
---> 73 FigureCanvasAgg.draw(self)
 74 if DEBUG: print 'FigureCanvasGTKAgg.render_figure pixmap',
pixmap
 75 #agg_to_gtk_drawable(pixmap, self.renderer._renderer, None)
/usr/local/lib/python2.4/site-packages/matplotlib/backends/backend_agg.py in
draw(self)
 390
 391 renderer = self.get_renderer()
--> 392 self.figure.draw(renderer)
 393
 394 def get_renderer(self):
/usr/local/lib/python2.4/site-packages/matplotlib/figure.py in draw(self,
renderer)
 567
 568 # render the axes
--> 569 for a in self.axes: a.draw(renderer)
 570
 571 # render the figure text
/usr/local/lib/python2.4/site-packages/matplotlib/axes.py in draw(self,
renderer, inframe)
 1105 if len(self.images)<=1 or renderer.option_image_nocomposite
():
 1106 for im in self.images:
-> 1107 im.draw(renderer)
 1108 else:
 1109 # make a composite image blending alpha
/usr/local/lib/python2.4/site-packages/matplotlib/image.py in draw(self,
renderer, *args, **kwargs)
 179 def draw(self, renderer, *args, **kwargs):
 180 if not self.get_visible(): return
--> 181 im = self.make_image(renderer.get_image_magnification())
 182 l, b, widthDisplay, heightDisplay =
self.axes.bbox.get_bounds()
 183 renderer.draw_image(l, b, im, self.axes.bbox)
/usr/local/lib/python2.4/site-packages/matplotlib/image.py in
make_image(self, magnification)
 122 im.is_grayscale = False
 123 else:
--> 124 x = self.to_rgba(self._A, self._alpha)
 125 im = _image.fromarray(x, 0)
 126 if len(self._A.shape) == 2:
/usr/local/lib/python2.4/site-packages/matplotlib/cm.py in to_rgba(self, x,
alpha)
 54 if hasattr(x, 'shape') and len(x.shape)>2: return x
 55 x = ma.asarray(x)
---> 56 x = self.norm(x)
 57 x = self.cmap(x, alpha)
 58 return x
/usr/local/lib/python2.4/site-packages/matplotlib/colors.py in
__call__(self, value, clip)
 749 self.autoscale(val)
 750 vmin, vmax = self.vmin, self.vmax
--> 751 if vmin > vmax:
 752 raise ValueError("minvalue must be less than or equal to
maxvalue")
 753 elif vmin==vmax:
ValueError: The truth value of an array with more than one element is
ambiguous. Use a.any() or a.all()

View entire thread

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.
Thanks for helping keep SourceForge clean.
X





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

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

More information about our ad policies

Ad destination/click URL:

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