SourceForge logo
SourceForge logo
Menu

matplotlib-users — Discussion related to using matplotlib

You can subscribe to this list here.

2003 Jan
Feb
Mar
Apr
May
(3)
Jun
Jul
Aug
(12)
Sep
(12)
Oct
(56)
Nov
(65)
Dec
(37)
2004 Jan
(59)
Feb
(78)
Mar
(153)
Apr
(205)
May
(184)
Jun
(123)
Jul
(171)
Aug
(156)
Sep
(190)
Oct
(120)
Nov
(154)
Dec
(223)
2005 Jan
(184)
Feb
(267)
Mar
(214)
Apr
(286)
May
(320)
Jun
(299)
Jul
(348)
Aug
(283)
Sep
(355)
Oct
(293)
Nov
(232)
Dec
(203)
2006 Jan
(352)
Feb
(358)
Mar
(403)
Apr
(313)
May
(165)
Jun
(281)
Jul
(316)
Aug
(228)
Sep
(279)
Oct
(243)
Nov
(315)
Dec
(345)
2007 Jan
(260)
Feb
(323)
Mar
(340)
Apr
(319)
May
(290)
Jun
(296)
Jul
(221)
Aug
(292)
Sep
(242)
Oct
(248)
Nov
(242)
Dec
(332)
2008 Jan
(312)
Feb
(359)
Mar
(454)
Apr
(287)
May
(340)
Jun
(450)
Jul
(403)
Aug
(324)
Sep
(349)
Oct
(385)
Nov
(363)
Dec
(437)
2009 Jan
(500)
Feb
(301)
Mar
(409)
Apr
(486)
May
(545)
Jun
(391)
Jul
(518)
Aug
(497)
Sep
(492)
Oct
(429)
Nov
(357)
Dec
(310)
2010 Jan
(371)
Feb
(657)
Mar
(519)
Apr
(432)
May
(312)
Jun
(416)
Jul
(477)
Aug
(386)
Sep
(419)
Oct
(435)
Nov
(320)
Dec
(202)
2011 Jan
(321)
Feb
(413)
Mar
(299)
Apr
(215)
May
(284)
Jun
(203)
Jul
(207)
Aug
(314)
Sep
(321)
Oct
(259)
Nov
(347)
Dec
(209)
2012 Jan
(322)
Feb
(414)
Mar
(377)
Apr
(179)
May
(173)
Jun
(234)
Jul
(295)
Aug
(239)
Sep
(276)
Oct
(355)
Nov
(144)
Dec
(108)
2013 Jan
(170)
Feb
(89)
Mar
(204)
Apr
(133)
May
(142)
Jun
(89)
Jul
(160)
Aug
(180)
Sep
(69)
Oct
(136)
Nov
(83)
Dec
(32)
2014 Jan
(71)
Feb
(90)
Mar
(161)
Apr
(117)
May
(78)
Jun
(94)
Jul
(60)
Aug
(83)
Sep
(102)
Oct
(132)
Nov
(154)
Dec
(96)
2015 Jan
(45)
Feb
(138)
Mar
(176)
Apr
(132)
May
(119)
Jun
(124)
Jul
(77)
Aug
(31)
Sep
(34)
Oct
(22)
Nov
(23)
Dec
(9)
2016 Jan
(26)
Feb
(17)
Mar
(10)
Apr
(8)
May
(4)
Jun
(8)
Jul
(6)
Aug
(5)
Sep
(9)
Oct
(4)
Nov
Dec
2017 Jan
(5)
Feb
(7)
Mar
(1)
Apr
(5)
May
Jun
(3)
Jul
(6)
Aug
(1)
Sep
Oct
(2)
Nov
(1)
Dec
2018 Jan
Feb
Mar
Apr
(1)
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
2020 Jan
Feb
Mar
Apr
May
(1)
Jun
Jul
Aug
Sep
Oct
Nov
Dec
2025 Jan
(1)
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Nov
Dec
S M T W T F S


1
(14)
2
(22)
3
(8)
4
(10)
5
(1)
6
7
(11)
8
(4)
9
(14)
10
(18)
11
(18)
12
(2)
13
(8)
14
(14)
15
(6)
16
(8)
17
(9)
18
(9)
19
(7)
20
(8)
21
(8)
22
(14)
23
(10)
24
(11)
25
(17)
26
(1)
27
(3)
28
(12)





Showing 9 results of 9

From: James B. <bo...@ll...> - 2005年02月18日 22:37:00
 From what I can gather, I can change the line colors and widths in the 
contour routine but cannot specify a line style
such as dashed, dotted etc.
Is this true? If so I would like to have this capability - it makes 
black and white plots easier to interpret.
In any case the contour in 0.72 works great - thanks
--JIm
From: John H. <jdh...@ac...> - 2005年02月18日 20:41:55
>>>>> "Chris" == Chris Barker <Chr...@no...> writes:
 Chris> Hi all, Is there a way to get the size of a text object? I
 Chris> can't seem to find a method that does that. The
 Chris> functionality must be in there somewhere, or having
 Chris> different reference points wouldn't work.
The size of a text object is tricky. Do you mean the width and height
in points? Or in data coords? The x,y location of text is in one
coordinate system (axes, figure or data), but the width and height are
not. To convert between coordinate systems (eg points or display
versus data) the way mpl does it is to one transform coord system to
display and use the other coordinate system to inverse transform.
This would enable you to get, for example, a text bounding box in data
coords, but could be screwed up by a figure resize.
If you tell me more precisely what you are trying to achieve, I might
be able to help you or think about design changes to accommodate it.
FYI, this is an issue that crops up a lot and is vexing. What one
would like to be able to do is use a layout engine and say, place
object one above and to the right of object 2 with a pad of 2 points.
The text instance can give you its bounding box in display if you pass
it the backend renderer -- this is required because the width and
height can be backend dependent. I suppose you are using OO agg based
on your previous posts. One problem with the current design that is
that the agg canvas doesn't generate it's renderer until draw time
(with caching), but you need access to the renderer before draw time
for layout that depends on text. If we move this logic to a
get_renderer method, you can use it at draw time. I'll attach a
replacement backend_agg.FigureCanvasAgg class to support this below
 from matplotlib.figure import Figure
 from matplotlib.backends.backend_agg import FigureCanvasAgg
 fig = Figure()
 canvas = FigureCanvasAgg(fig)
 renderer = canvas.get_renderer()
 ax = fig.add_subplot(111)
 ax.plot([1,2,3])
 t = ax.text(1,2,'hi mom')
 bbox = t.get_window_extent(renderer)
 print 'display', bbox.get_bounds() #l,b,w,h
 # get the axes data coords bbox of this display bounding box
 from matplotlib.transforms import inverse_transform_bbox
 axbox = inverse_transform_bbox(ax.transData, bbox)
 print 'data coords', axbox.get_bounds()
 fig.savefig('test')
In backend_agg.py FigureCanvasAgg, replace the draw method with the following 2
methods
 def draw(self):
 """
 Draw the figure using the renderer
 """
 if __debug__: verbose.report('FigureCanvasAgg.draw', 'debug-annoying')
 renderer = self.get_renderer()
 self.figure.draw(renderer)
 def get_renderer(self):
 l,b,w,h = self.figure.bbox.get_bounds()
 key = w, h, self.figure.dpi.get()
 try: self._lastKey, self.renderer
 except AttributeError: need_new_renderer = True
 else: need_new_renderer = (self._lastKey != key)
 if need_new_renderer:
 self.renderer = RendererAgg(w, h, self.figure.dpi)
 self._lastKey = key
 return self.renderer
Hope this gets you started -- if you provide more details we maybe
able to improve from here.
JDG
From: Chris B. <Chr...@no...> - 2005年02月18日 19:23:54
Hi all,
Is there a way to get the size of a text object? I can't seem to find a 
method that does that. The functionality must be in there somewhere, or 
having different reference points wouldn't work.
-thanks, Chris
-- 
Christopher Barker, Ph.D.
Oceanographer
 		
NOAA/OR&R/HAZMAT (206) 526-6959 voice
7600 Sand Point Way NE (206) 526-6329 fax
Seattle, WA 98115 (206) 526-6317 main reception
Chr...@no...
From: Chris B. <Chr...@no...> - 2005年02月18日 18:25:06
Attachments: BinaryArraySaver.py
OOPS, forgot the enclosure.
-Chris
-- 
Christopher Barker, Ph.D.
Oceanographer
 		
NOAA/OR&R/HAZMAT (206) 526-6959 voice
7600 Sand Point Way NE (206) 526-6329 fax
Seattle, WA 98115 (206) 526-6317 main reception
Chr...@no...
From: Chris B. <Chr...@no...> - 2005年02月18日 18:24:35
Xavier Gnata wrote:
> Hi,
> 
> How can I save (and relaod) a matrix into a binary file *with* matrix 
> shape and type storage.
> I have a feature request :
> Basically, it would be great to be able to do something like :
> 
> X = rand(100,100)
> BSave('foo.dat', X)
> Y = BLoad('foo.dat')
I don't know of an existing function that does this, but it would not be 
hard to roll your own. All you need to do is first write the dimensions 
and type of the array to the file, then the binary data. To read it back 
in, you'd first read in the meta data, then the binary data, and you're 
done.
I've enclosed a quickie prototype (using Numeric, I think numarray may 
have tofile() and fromfile() methods, and it handles typecode differently.
By the way, there may be something in SciPy for this, and it's also 
possible that arrays can be pickled.
This is also a better question for the NumPy list than this list.
-Chris
-- 
Christopher Barker, Ph.D.
Oceanographer
 		
NOAA/OR&R/HAZMAT (206) 526-6959 voice
7600 Sand Point Way NE (206) 526-6329 fax
Seattle, WA 98115 (206) 526-6317 main reception
Chr...@no...
From: John H. <jdh...@ac...> - 2005年02月18日 15:28:41
>>>>> "Humufr" == Humufr <hu...@ya...> writes:
 Humufr> matplotlib CVS version.
There was a bug in the autoscaler in CVS briefly before the 0.72
release, but this was fixed. I reformatted your example into python
code and it runs fine with current CVS. 
I appreciate the report, but could I ask you to do 2 things next time?
Please send proper python code which exposes the the bug (eg your
lists are not python lists) and report either the matplotlib version
that exposes the bug, or if you are using CVS, the revision number.
For example, if you suspect a bug in the ticking (where the autoscaler
lives)
> cvs status lib/matplotlib/ticker.py
===================================================================
File: ticker.py Status: Up-to-date
 
 Working revision: 1.14
 Repository revision: 1.14 /cvsroot/matplotlib/matplotlib/lib/matplotlib/ticker.py,v
There is a problem with sourceforge that non-developer CVS checkouts
have long lags (eg the CVS version you get may be older than the
latest release!) but sourceforge says they are trying to fix this.
Thanks!
JDH
From: John H. <jdh...@ac...> - 2005年02月18日 15:15:51
>>>>> "Rich" == Rich Drewes <dr...@in...> writes:
 Rich> Thanks for your response. I am familiar with implot however
 Rich> I've never been able to get it to plot with distinct pixel
 Rich> boundaries. What I want is a figimage-like plot with
 Rich> distinct, single-color regions, just larger regions, so that
 Rich> the entire screen window is filled. No smoothing or
 Rich> interpolation, just big chunky pixels.
Hi Rich,
You'll probably want to use
 imshow(X, interpolation='nearest')
to prevent smoothing / interpolation.
 Rich> "you can define an Axes with size [0,1,0,1]"
 Rich> The order of the points is wrong there, and you set me
 Rich> straight.
OK, I'll fix that for the next release, thanks.
See also the matshow command new to 0.72 which created an axes with
the same aspect ration as your array.
JDH
From: Robert L. <ro...@le...> - 2005年02月18日 05:34:29
John Hunter wrote:
> Robert> Is it possible to include a marker from one or more
> Robert> scatter plots in the legend?
> 
> This is a bit tricky -- scatter plots can vary in size and color.
Well, in my newbie-ness I wasn't aware that this was the case.
> What should one use for the legend marker? So the short answer is no.
> My question for you is, "how *should* it work?"
> 
> Not if you are using homogeneous marker sizes and colors, I suggest
> using plot markers tweaking the properties, as in
> 
> line, = plot(x,y,linestyle='None', marker='s', 
> markerfacecolor='red', markeredgecolor='g',
> markersize=20, markeredgewith=3)
> 
For me, this is exactly how it should work - thanks!
Robert
From: Malte M. <Mal...@cs...> - 2005年02月18日 05:28:18
Hi,
I remember reading quite a while ago that event blocking (request/reply) was 
on the list of todos.
Is it possible to wait for an event to be fired, i.e. having a function 
request an event and return when it has been emitted.
All examples only show "GUI" actions on events.
Cheers,
Malte.

Showing 9 results of 9

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 によって変換されたページ (->オリジナル) /