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
(3) |
|
2
|
3
(1) |
4
(7) |
5
(7) |
6
(11) |
7
(3) |
8
(4) |
|
9
(5) |
10
(5) |
11
(15) |
12
(7) |
13
(5) |
14
(4) |
15
(5) |
|
16
|
17
(4) |
18
(8) |
19
(12) |
20
(11) |
21
(4) |
22
(2) |
|
23
(4) |
24
(7) |
25
(5) |
26
(13) |
27
(3) |
28
(10) |
29
(3) |
|
30
(1) |
31
(15) |
|
|
|
|
|
|
From: Robert K. <rk...@uc...> - 2005-01-28 05:21:59
|
Alan G Isaac wrote: > Since pylab's 'load' function has come up, > it may be worth mentioning that it overrides scipy's load function. > (And of course Numeric has its own 'load'.) Nope, it's just Numeric and pylab that have a load() at top-level. > It may be a bad habit, > but I doubt I'm the only one who occasionally does > from scipy import * > from pylab import * You're definitely *not* the only one. > I would even claim that both encourage this ... > especially for new users. If that is correct, > and if scipy+pylab is a common pair (as I > believe it is), then perhaps ... -- Robert Kern rk...@uc... "In the fields of hell where the grass grows high Are the graves of dreams allowed to die." -- Richard Harter |
|
From: Alan G I. <ai...@am...> - 2005-01-28 04:07:10
|
On Thu, 27 Jan 2005 Alan G Isaac apparently wrote: > Since pylab's 'load' function has come up, > it may be worth mentioning that it overrides scipy's load function. Never mind: this is wrong as stated. Sorry for the noise. Alan Isaac |
|
From: Alan G I. <ai...@am...> - 2005-01-28 03:57:01
|
Since pylab's 'load' function has come up, it may be worth mentioning that it overrides scipy's load function. (And of course Numeric has its own 'load'.) It may be a bad habit, but I doubt I'm the only one who occasionally does from scipy import * from pylab import * I would even claim that both encourage this ... especially for new users. If that is correct, and if scipy+pylab is a common pair (as I believe it is), then perhaps ... fwiw, Alan Isaac |
|
From: Humufr <hu...@ya...> - 2005-01-27 16:46:19
|
Hi,
I had a problem with the load function. I have a file with some data in
two columns. I'm trying to use load:
x,y=load('toto.dat')
with toto something like:
1 3
3 4
5 6
I obtained the error message:
ValueError: too many values to unpack
I understanded why. It's because the array is not use by columns but by
lines when you unpack the array from load to x and y so I don't have
enough variable. To solve this problem I add the transpose function:
x,y=transpose(load('toto.dat'))
I don't know if I'm alone with this problem but if yes that will be a
good idea to update the help of the function.
Thanks,
Nicolas
|
|
From: John H. <jdh...@ac...> - 2005-01-27 14:57:25
|
>>>>> "Chris" == Chris Barker <Chr...@no...> writes:
Chris> anyway, to cut my rant short, here is my vote for
Chris> matplotlib development (not that I get a vote, but
Chris> hopefully I'll have time to help out someday)
Hey, I live in Chicago -- we pioneered "vote early, vote often".
Chris> 2) Improve the OO interface to make it just as easy to use.
Do you have some suggestions which would make the OO interface easier
to use? For concreteness, here is the archetypal OO script
from matplotlib.backends.backend_svg import FigureCanvasSVG
from matplotlib.figure import Figure
fig = Figure()
ax = fig.add_subplot(211)
ax.plot([1,2,3])
ax.set_xlabel('time')
canvas = FigureCanvasSVG(fig)
canvas.print_figure('myfile.svg')
Things that leap to my mind:
* hide the complexity of having both a canvas and the figure from
the user, allowing them to deal only with figures, or at least
have the figure store a ref to its canvas and allow you to do
fig.savefig('myfig')
which can forward the call on to its canvas print_figure method.
This would bring the OO interface closer to the pylab interface
and would prevent you from having to remember which methods were
fig methods and which methods were canvas methods. We could also
provide a pylab independent factory function that instantiates a
figure and canvas with the relevant initialization, allowing you to
do something like
fig, canvas = figure_factory(*args, **kwargs) # use the current backend
but I'm not sure how advisable it is to hide this complexity
because what you ultimately do with the objects depends on whether
you are using a GUI backend or not. But for pure image backends
it would be possible to have a single OO interface which works
across backends.
* move the (few) remaining pylab only methods (axis, colorbar) into
the OO framework for full compatibility
* use properties/traits so you could do
ax.xlabel = 'hi mom'
while retaining the setters and getters for backwards
compatibility
* provide more pure OO examples in the examples directory
* significant;y expand the OO section of the user's guide
Do you have additional ideas? Or are these the issues your were thinking of?
JDH
|
|
From: Chris B. <Chr...@no...> - 2005-01-27 05:02:54
|
----- Original Message ----- From: John Hunter <jdh...@ac...> > Eg, if you have set your dpi parameter correctly to reflect your > monitor > > from pylab import * > fig = figure(dpi=96) > plot([1,2,3]) > text(1,2,'hi mom', fontsize=72) > show() > > creates text that is an inch high, irrespective of the view port. I > think this is the behavior most people expect, at least those who are > used to thinking about fontsizes in points. Well, I'd rather set the fontsize in Pixels, but I suppose I can do that by setting DPI to 72. However, you generally don't want to zoom text as you zoom in and out, you are zooming in on teh DATA, no the PICTURE of the data. By the way, if you do want that, check out my FloatCanvas, in the wxPython lib. You'll have to draw your own Axes, but if you use ScaledText, you'll get the whole picture to zoom and scroll. -Chris |
|
From: John H. <jdh...@ac...> - 2005-01-26 21:20:09
|
>>>>> "Stephen" == Stephen Walton <ste...@cs...> writes:
Stephen> Nils Wagner wrote:
>> How can I add vertical/horizontal lines (x=constant, y=constant
>> respectively) to an existing plot with matplotlib ?
Stephen> I've always done something like:
Stephen> plot(x,y) a=axis() plot(a[0:2],[50,50],'k')
Stephen> for example, to get a line at y=50. If there's something
Stephen> shorter I'm open to suggestions.
if you want to plot a line in data coordinates, you can use vline
plot([0,1,2],[3,4,5])
vlines([1], [4,5], hold=True)
See also vlines. This x and y location of this line will "move" with
the data when you pan and zoom.
If you want to plot a line in axes coords, us axvline, where x is in
data coords but y is now interpreted as a fraction of the axes width
and the x location will not move with pans and zooms. Thus if you
want a vertical bar at x=1 that ranges from the top to the bottom, do
axvline(1) # ymin=0 (bottom) and ymax=1 (top) default
The x location moves with pan/zoom but the y data are fixed.
JDH
|
|
From: Darren D. <dd...@co...> - 2005-01-26 20:09:14
|
Hi folks,
I am trying to do something similar to:
from pylab import *
plot([1,2,3,4])
text(1,3,'a)')
savefig('test.eps')
I can't render the eps file because of the way that "a)" is recorded ["(a)"
will render, so its just a parsing issue]. I think, in the eps file "(a))
show" should read "(a\)) show" for the image will render.
Changing line 353 in backend_ps.py to
self._pswriter.write("(%s) show\n"%s.replace(')','\)').replace('(','\('))
would do the trick.
I'm using gentoo linux and matplotlib 0.71.
--
Darren
|
|
From: Jeff W. <js...@fa...> - 2005-01-26 18:04:01
|
Nils Wagner wrote: > Hi all, > > How can I add vertical/horizontal lines (x=constant, y=constant > respectively) to an existing plot with matplotlib ? > A small example would be appreciated. See http://matplotlib.sourceforge.net/matplotlib.pylab.html#-axhline and http://matplotlib.sourceforge.net/matplotlib.pylab.html#-axvline > > Is there a simple command to plot closed polygons, which are defined > by the coordinates of the vertices ? > http://matplotlib.sourceforge.net/matplotlib.pylab.html#-fill See axhspan_demo.py and fill_demo.py for example usage. -Jeff -- Jeffrey S. Whitaker Phone : (303)497-6313 Meteorologist FAX : (303)497-6449 NOAA/OAR/CDC R/CDC1 Email : Jef...@no... 325 Broadway Web : www.cdc.noaa.gov/~jsw Boulder, CO, USA 80303-3328 Office : Skaggs Research Cntr 1D-124 |
|
From: Haibao T. <ba...@ug...> - 2005-01-26 17:47:15
|
I know if I modify the code, I can avoid these things. But out of my = eccentric nature, all I am asking is how to do the zooming more nicely? o The zooming of text, as you can test in <mathtext_demo.py>. I remember = once I put some mathtext symbols, as I wished to see the subscript I = tried zoom to see more sharply but I failed. I saved png and zoomed = finally. o The zooming of subplot, as you can test in <axes_demo.py>, well = personally I assume if you zoom on a subplot you would expect it gets = enlarged. o The zooming of crosshaired frontend, as you can test in = <wxcursor_demo.py>, this is minor problem, but when I zoom a random = area, I see a vestigial image of the cross-hair which is a tiny bit = unnatural. And of course the speed of zooming... but I see the pylab is redrawing = the figure so this is understandable. I know this is a plotting module = not an ACDsee or picasa, so forgive my eccentricity. btw: along with this note - how to insert a space in a bunch of mathtext as I wish to put spaces = near '=3D'? - could you stop the interactive console (at least make it configurable) = after the figure is closed so that I don't need to put sys.exit(). Thank you (smile). Bao=20 |
|
From: Stephen W. <ste...@cs...> - 2005-01-26 17:19:37
|
Nils Wagner wrote: > How can I add vertical/horizontal lines (x=constant, y=constant > respectively) to an existing plot with matplotlib ? I've always done something like: plot(x,y) a=axis() plot(a[0:2],[50,50],'k') for example, to get a line at y=50. If there's something shorter I'm open to suggestions. |
|
From: Darren D. <dd...@co...> - 2005-01-26 17:04:33
|
On Wednesday 26 January 2005 10:32 am, Perry Greenfield wrote: > On Jan 26, 2005, at 10:14 AM, John Hunter wrote: > >>>>>> "Haibao" == Haibao Tang <ba...@ug...> writes: > > > > Haibao> Hi folks, I've noticed that zooming on the text won't make > > Haibao> the text any larger, and some other instances like > > Haibao> sub-axes share the problem too. And it is not the default > > Haibao> zoom behavior people usually expect. Any solution to that? > > > > Well, I suspect we'd have to poll people to know whether this is the > > behavior they usually expect.... > > Exactly. I'd guess that most people would not want the text to zoom. I > don't. If one takes zooming as a literal zoom of everything in the > field, yes, I can understand that is what some might expect. But what > is really most useful? I doubt that literal zooming is in the great > majority of cases. I also would expect the default behavior to not zoom the text. -- Darren |
|
From: Nils W. <nw...@me...> - 2005-01-26 16:50:39
|
Hi all, How can I add vertical/horizontal lines (x=constant, y=constant respectively) to an existing plot with matplotlib ? A small example would be appreciated. Is there a simple command to plot closed polygons, which are defined by the coordinates of the vertices ? Thanks in advance. Nils |
|
From: Perry G. <pe...@st...> - 2005-01-26 15:31:34
|
On Jan 26, 2005, at 10:14 AM, John Hunter wrote: >>>>>> "Haibao" == Haibao Tang <ba...@ug...> writes: > > Haibao> Hi folks, I've noticed that zooming on the text won't make > Haibao> the text any larger, and some other instances like > Haibao> sub-axes share the problem too. And it is not the default > Haibao> zoom behavior people usually expect. Any solution to that? > > Well, I suspect we'd have to poll people to know whether this is the > behavior they usually expect.... > Exactly. I'd guess that most people would not want the text to zoom. I don't. If one takes zooming as a literal zoom of everything in the field, yes, I can understand that is what some might expect. But what is really most useful? I doubt that literal zooming is in the great majority of cases. Perry |
|
From: Todd M. <jm...@st...> - 2005-01-26 15:30:36
|
On Wed, 2005-01-26 at 10:09, John Hunter wrote: > >>>>> "Hans" == Hans Fangohr <H.F...@so...> writes: > > Hans> I didn't make myself very clear, or I have misunderstood the > Hans> meaning of "interactive". I presumed that 'interactive' > Hans> means: I issue the plot command and the figure pops up > Hans> immediatly, etc. > > Hans> Not interactive (in my understanding) means that I issue all > Hans> the matplotlib commands I'd like to use and at the end I can > Hans> use show() to display the picture. > > This partially but not completely correct, but it is admittedly > confusing. Make sure you have read > http://matplotlib.sourceforge.net/interactive.html and > http://matplotlib.sourceforge.net/faq.html#SHOW . As emphasized in > the FAQ > > IMPORTANT: show should called at most once per script and it should > be the last line of your script. At that point, the GUI takes > control of the interpreter. If you want to force a figure draw, use > draw instead. > > If you are issuing plot commands from idle, you need interactive : > True, you should not use show, and if you want finer control of when > the plot pops up and it drawn, use the commands ion, ioff and draw, as > explained on the interactive.html link. > > Hope this helps -- if you still encounter problems please let us know > because it is always possible there is a bug .... I'm really busy this morning (like what else is new for any of us), but I can confirm that there is a bug in 0.71. The root cause is that an "extra" mainloop is now run by matplotlib in "Idle -n" which already has a mainloop of its own. I think the key to solving this class of problem is to detect the presence of "freebe" mainloops to avoid running two mainloops while ensuring that we run at least one. To do this, I'm hoping matplotlib can ask Tkinter if a mainloop is running or not. The only alternative that occurs to me is to detect the presence of particular shells and maintain knowledge about the "freebe mainloop" status of each. This morning, I tried to detect IDLE using "'idlelib.__main__' in sys.modules.keys()" and was able to fix the current bug by suppressing the mainloop and assuming that "Idle -n" is running and not "Idle". It would be much better to detect the mainloop directly though. Regards, Todd |
|
From: John H. <jdh...@ac...> - 2005-01-26 15:20:54
|
>>>>> "Haibao" == Haibao Tang <ba...@ug...> writes:
Haibao> Hi folks, I've noticed that zooming on the text won't make
Haibao> the text any larger, and some other instances like
Haibao> sub-axes share the problem too. And it is not the default
Haibao> zoom behavior people usually expect. Any solution to that?
Well, I suspect we'd have to poll people to know whether this is the
behavior they usually expect....
Text locations are in data coordinates, but text sizes are physical
sizes, ie 12 points equal 12/72 inches, approximately... Physical
sizes don't change when you zoom in because the physical size of the
font will not change when you change the view limits of the data
coordinate system.
Eg, if you have set your dpi parameter correctly to reflect your
monitor
from pylab import *
fig = figure(dpi=96)
plot([1,2,3])
text(1,2,'hi mom', fontsize=72)
show()
creates text that is an inch high, irrespective of the view port. I
think this is the behavior most people expect, at least those who are
used to thinking about fontsizes in points.
JDH
|
|
From: John H. <jdh...@ac...> - 2005-01-26 15:15:49
|
>>>>> "Hans" == Hans Fangohr <H.F...@so...> writes:
Hans> I didn't make myself very clear, or I have misunderstood the
Hans> meaning of "interactive". I presumed that 'interactive'
Hans> means: I issue the plot command and the figure pops up
Hans> immediatly, etc.
Hans> Not interactive (in my understanding) means that I issue all
Hans> the matplotlib commands I'd like to use and at the end I can
Hans> use show() to display the picture.
This partially but not completely correct, but it is admittedly
confusing. Make sure you have read
http://matplotlib.sourceforge.net/interactive.html and
http://matplotlib.sourceforge.net/faq.html#SHOW . As emphasized in
the FAQ
IMPORTANT: show should called at most once per script and it should
be the last line of your script. At that point, the GUI takes
control of the interpreter. If you want to force a figure draw, use
draw instead.
If you are issuing plot commands from idle, you need interactive :
True, you should not use show, and if you want finer control of when
the plot pops up and it drawn, use the commands ion, ioff and draw, as
explained on the interactive.html link.
Hope this helps -- if you still encounter problems please let us know
because it is always possible there is a bug ....
JDH
|
|
From: John H. <jdh...@ac...> - 2005-01-26 15:11:48
|
>>>>> "Humufr" == Humufr <hu...@ya...> writes:
Humufr> Hi John, I saw that you add in the load function
Humufr> the possibility to have some line comment with the
Humufr> character '%'. I would like to change this function and
Humufr> generalize a little bit this. Not everyone is using the
Humufr> character '%' but some other like '#' or '!'. So I add
Humufr> this possibilty to the function. I don't know if you are
Humufr> agree with it but in case I join the change below.
OK, that's a good idea. I added it to pylab.py. In the future,
please add changes to the docstring as well when you change the
function, so that folks who do help(load) will get some information on
what the comments kwarg does. Thanks...
Humufr> Another things, I think there are a small bug for the
Humufr> Tkagg backend. When I close the windows instead to come
Humufr> back to my shell I'm arriving in a python shell. I tried
Humufr> (when I had my laptop) with the Gtkagg backend and I
Humufr> didn't notice this problem.
Not technically a bug, as it was intentional, but perhaps an
annoyance. In order for python to work with idle, we need this line
os.environ['PYTHONINSPECT'] = '1'
in the show function of backends/backend_tkagg.py. If you comment out
this line the shell will not be raised.
Todd, any objection to making this an rc parameter, so that people can
optionally have this feature? Something like
tk.window_focus : False # Maintain shell focus for TkAgg
tk.pythoninspect : False # True for interactive idle
JSH
|
|
From: Hans F. <H.F...@so...> - 2005-01-26 14:17:45
|
John, >>>>>> "Hans" == Hans Fangohr <H.F...@so...> writes: > > Hans> Hm. Have upgraded to 0.71. Now I don't get the error message > Hans> anymore, however, once I close the figure window, the IDLE > Hans> (-n) prompt doesn't respond anymore. (Same scenario as > Hans> described in last email.) > > Hans> Ideas? > Well, if you are using matplotlib interactively from within IDLE< then > interactive : True should be set in your rc file, no? I didn't make myself very clear, or I have misunderstood the meaning of "interactive". I presumed that 'interactive' means: I issue the plot command and the figure pops up immediatly, etc. Not interactive (in my understanding) means that I issue all the matplotlib commands I'd like to use and at the end I can use show() to display the picture. I presumed that when I close the figure windows (by clicking on the right symbol on the window), I could carry on using the IDLE session (in this example). Here is the bit that I didn't expect and assumed would be some kind of bug: I need to kill IDLE (when clicking on the [X] symbol in the upper right hand corner of the IDLE -n window in MS XP, I get the message :" The program is still running! Do you want to kill it?"). In summary, I can't carry on using the session once I have used the show() command. Thanks, Hans |
|
From: John H. <jdh...@ac...> - 2005-01-25 21:20:01
|
>>>>> "Hans" == Hans Fangohr <H.F...@so...> writes:
Hans> Hm. Have upgraded to 0.71. Now I don't get the error message
Hans> anymore, however, once I close the figure window, the IDLE
Hans> (-n) prompt doesn't respond anymore. (Same scenario as
Hans> described in last email.)
Hans> Ideas?
Well, if you are using matplotlib interactively from within IDLE< then
interactive : True should be set in your rc file, no?
JDH
|
|
From: Hans F. <H.F...@so...> - 2005-01-25 21:17:57
|
Hi John, > Hans> The figure windows is interacting (despite the error > Hans> message). Once I close the figure window, I can't get back > Hans> to the Python prompt; i.e. the shell doesn't respond any > Hans> more. > > Hans> Do we expect matplotlib (0.70.1) to work in non-interactive > Hans> mode with "IDLE -n"? > > This is an unrelated bug fixed in 0.71. > > Thanks for the report! Hm. Have upgraded to 0.71. Now I don't get the error message anymore, however, once I close the figure window, the IDLE (-n) prompt doesn't respond anymore. (Same scenario as described in last email.) Ideas? > JDH > > > > > > > > ------------------------------------------------- Dr Hans Fangohr Computational Engineering & Design Research Group School of Engineering Sciences University of Southampton Southampton, SO17 1BJ United Kingdom Location: Building 25, Room 1027 phone : +44 (0) 23 8059 8345 fax : +44 (0) 23 8059 7082 email : fa...@so... ------------------------------------------------- |
|
From: Humufr <hu...@ya...> - 2005-01-25 20:42:36
|
Hi John,
I saw that you add in the load function the possibility to have some
line comment with the character '%'. I would like to change this
function and generalize a little bit this. Not everyone is using the
character '%' but some other like '#' or '!'. So I add this possibilty
to the function. I don't know if you are agree with it but in case I
join the change below.
Another things, I think there are a small bug for the Tkagg backend.
When I close the windows instead to come back to my shell I'm arriving
in a python shell. I tried (when I had my laptop) with the Gtkagg
backend and I didn't notice this problem.
Thanks.
Nicolas
def load(fname,comments='%'):
"""
Load ASCII data from fname into an array and return the array.
The data must be regular, same number of values in every row
fname can be a filename or a file handle
matfile data is not currently supported, but see
Nigel Wade's matfile ftp://ion.le.ac.uk/matfile/matfile.tar.gz
Example usage:
x,y = load('test.dat') # data in two columns
X = load('test.dat') # a matrix of data
x = load('test.dat') # a single column of data
"""
if is_string_like(fname):
fh = file(fname)
elif hasattr(fname, 'seek'):
fh = fname
else:
raise ValueError('fname must be a string or file handle')
X = []
numCols = None
for line in fh:
line = line[:line.find(comments)].strip()
if not len(line): continue
row = [float(val) for val in line.split()]
thisLen = len(row)
if numCols is not None and thisLen != numCols:
raise ValueError('All rows must have the same number of
columns')
X.append(row)
X = array(X)
r,c = X.shape
if r==1 or c==1:
X.shape = max([r,c]),
return X
|
|
From: John H. <jdh...@ac...> - 2005-01-25 20:14:47
|
>>>>> "Hans" == Hans Fangohr <H.F...@so...> writes:
Hans> The figure windows is interacting (despite the error
Hans> message). Once I close the figure window, I can't get back
Hans> to the Python prompt; i.e. the shell doesn't respond any
Hans> more.
Hans> Do we expect matplotlib (0.70.1) to work in non-interactive
Hans> mode with "IDLE -n"?
This is an unrelated bug fixed in 0.71.
Thanks for the report!
JDH
|
|
From: Hans F. <H.F...@so...> - 2005-01-25 20:09:40
|
Hi John,
I am coming back to our earlier discussion ...
>>>>>>> "Hans" == Hans Fangohr <H.F...@so...> writes:
>>
>>> Hm. Done that. A figure window pops up immediately but is
>>> not being updated correctly: a part of the graph is visible,
>>> the other part of the figure (which was underneath another
>>> window initially) appears white. The titel of the figure
>>> says "Figure 1 (Not responding)". IDLE, however, responds
>>> happily ;-) T
>>
>> Todd, many moons ago you wrote me and said I had inadvertently screwed
>> up something in tkagg show that broke the idle -n behavior. If I
>> recall correctly, we never reverted, since I didn't understand exactly
>> what to do. Perhaps you could revisit the current tkagg versus the
>> old one to make sure it is right.
>>
>> Hans, does it make a difference if you uncomment
>>
>> #os.environ['PYTHONINSPECT'] = '1'
>>
>> in the show method of
>> site-packages/matplotlib/backends/backend_tkagg.py? You should set
>> 'interactive : True' as Todd suggested. Do not use show, as it is not
>> designed for interactive use. I suggest carefully testing all 4
>> combinations: with and without the PYTHONINSPECTmline, and with and
>> without -n.
>
> Setting 'interactive=True' in .matplotlibrc
>
> IDLE #os.environ['PYTHONINSPECT'] = '1' -> fail
> IDLE -n #os.environ['PYTHONINSPECT'] = '1' -> fail
> IDLE os.environ['PYTHONINSPECT'] = '1' -> fail
> IDLE -n os.environ['PYTHONINSPECT'] = '1' -> success
>
> So that's good.
This doesn't work in non-interactive mode. What I observe is this:
- start Idle with -n (the "==== No Subprocess ====" message appears).
- at prompt issue commands:
>>>import pylab
>>>pylab.plot(range(10))
>>>pylab.show()
- figure windows shows up
- python reports this error message:
>>> pylab.show()
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Python23\lib\lib-tk\Tkinter.py", line 1345, in __call__
return self.func(*args)
File
"C:\Python23\lib\site-packages\matplotlib\backends\backend_tkagg.py",
line 215, in key_release
FigureCanvasBase.key_release_event(self, key)
File "C:\Python23\Lib\site-packages\matplotlib\backend_bases.py",
line 677, in key_release_event
event = KeyEvent('key_release_event', self, key, self._lastx,
self._lasty)
File "C:\Python23\Lib\site-packages\matplotlib\backend_bases.py",
line 640, in __init__
LocationEvent.__init__(self, name, canvas, x, y)
File "C:\Python23\Lib\site-packages\matplotlib\backend_bases.py",
line 566, in __init__
if a.in_axes(self.x, self.y):
File "C:\Python23\Lib\site-packages\matplotlib\axes.py", line 1544, in
in_axes
return self.bbox.contains(xwin, ywin)
TypeError: float() argument must be a string or a number
The figure windows is interacting (despite the error message). Once I
close the figure window, I can't get back to the Python prompt; i.e. the
shell doesn't respond any more.
Do we expect matplotlib (0.70.1) to work in non-interactive mode with
"IDLE -n"?
Thanks,
Hans
|
|
From: Stephen W. <ste...@cs...> - 2005-01-24 20:34:38
|
As a protanope, and knowing that lots of folks with interest in graphics frequent this newsgroup, I thought I'd call everyone's attention to the article entitled "The End of the Rainbow? Color Schemes for Improved Data Graphics" which appeared in the 5 October 2004 issue of the American Geophysical Union's weekly newsmagazine EOS. A Web site with the sample color schemes and a copy of the article is at http://geography.uoregon.edu/datagraphics/ |