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
(22) |
2
(17) |
3
(21) |
4
(7) |
5
(7) |
6
(17) |
7
(8) |
8
(8) |
9
(33) |
10
(11) |
11
|
12
(2) |
13
(11) |
14
(29) |
15
(13) |
16
(13) |
17
(3) |
18
(2) |
19
(3) |
20
(7) |
21
(17) |
22
(12) |
23
(19) |
24
(19) |
25
(14) |
26
(5) |
27
(25) |
28
(13) |
|
|
|
|
From: Samuel M. S. <sm...@sa...> - 2006-02-01 23:02:56
|
I had installed numarray 1.1.1 and Numeric 23.7 using package installers from http://pythonmac.org/packages/ I downloaded numarray 1.5 tarball and unpacked it. I used the following command pointing to the include directory in the 1.5 distribution. > CPPFLAGS="-I/foo/bar/" sudo python setup.py build My previous error went away but I go another similar error for Numeric. gcc -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused- madd -fno-common -dynamic -DNDEBUG -g -O3 -Wall -Wstrict-prototypes - I/install/python/macpython/python2.4.2/numerical/numarray-1.5.0/ include -Isrc -I. -I/usr/local/include -I/usr/include -I. -I/System/ Library/Frameworks/Python.framework/Versions/2.3/include/python2.3 -c src/_nc_transforms.cpp -o build/temp.darwin-8.4.0-Power_Macintosh-2.3/ src/_nc_transforms.o -DNUMERIC=1 src/_nc_transforms.cpp:10:40: Numeric/arrayobject.h: No such file or directory so I download Numeric 24.2 and decided to go ahead and install it. Which was successful While I was at it I decided to install numarray 1.5 which installed without complaining but when I tried to import it to test I get the following error >>> import numarray Traceback (most recent call last): File "<stdin>", line 1, in ? File "/Library/Frameworks/Python.framework/Versions/2.4/lib/ python2.4/site-packages/numarray/__init__.py", line 42, in ? from numarrayall import * File "/Library/Frameworks/Python.framework/Versions/2.4/lib/ python2.4/site-packages/numarray/numarrayall.py", line 2, in ? from generic import * File "/Library/Frameworks/Python.framework/Versions/2.4/lib/ python2.4/site-packages/numarray/generic.py", line 1036, in ? import numarraycore as _nc File "/Library/Frameworks/Python.framework/Versions/2.4/lib/ python2.4/site-packages/numarray/numarraycore.py", line 1472, in ? import ufunc File "/Library/Frameworks/Python.framework/Versions/2.4/lib/ python2.4/site-packages/numarray/ufunc.py", line 1658, in ? _choose = _ChooseUFunc() TypeError: function takes exactly 5 arguments (0 given) I then tried doing a python setup.py clean in the matplotlib distribution directory and the clean failed because it also tries to import numarray. So I guess now I have to fix numarray. Any Ideas what is broken? |
From: Eric F. <ef...@ha...> - 2006-02-01 22:51:24
|
Christopher Barker wrote: > I guess it may be time for me to join matplotlib-devel. Chris, I should have copied the message to you and/or left it on matplotlib-users instead of switching it to devel--but I thought I would try to keep down the traffic on users. My mistake, in this case; I'm sorry. But yes, there are advantages in joining devel, too, so I encourage it. > > Eric Firing wrote: > >> Eric> If this strategy sounds reasonable to you, > > > What was that strategy? The remainder of this message is what I sent to John and mpl-devel: Chris Barker found a problem: plotting in an axes, then calling axes.cla, then adding a collection, then calling axes.plot, results in the original plot's dataLim being used as the starting point for the update. I think the problems are: 1) axes.add_line updates the data limits, but add_collection does not; 2) axes.has_data is simply looking to see whether a line or collection has been added, but is using that as an indication of whether the data limits have been set; this is invalid because add_collection does not set the limits. I suggest two changes to address the problem: 1) Use a flag instead of the have_data() method to keep track of whether data limit updating needs to start from scratch. Then axes.cla() can set the flag, and the update_datalim* functions can clear it. 2) Add an optional flag to add_collection, telling it to call the collection's get_verts method and use the result to update the data limits. This would make it easier to use collections in user-level code, without imposing any performance penalty for functions like contour that handle the data limit updating in a more efficient way. If this strategy sounds reasonable to you, I can go ahead and implement it. Eric |
From: Darren D. <dd...@co...> - 2006-02-01 22:20:22
|
I made some improvements to the usetex option over the last few days in order to make font selection fit seemlessly with the rest of Matplotlib. The usetex option will now respect the serif, sans-serif, monospace, and cursive rc settings. Usetex looks until it finds a latex-compatible font, or defaults to computer modern. Proper font support with plainTeX is more difficult, and everyone seems to use the latex backend anyway, so I am dropping support of the tex engine. With these changes, the font.latex.package and the text.tex.engine rc settings are no longer needed, and should be removed from ones personal matplotlibrc file. Here are the currently supported latex fonts: - serif: Times, Palatino, Bookman, New Century Schoolbook, Charter, Computer Modern Roman (Times and Palatino have their own math fonts, the others default to computer modern math fonts) - sans-serif: Helvetica, Avant Garde, Computer Modern Sans Serif (I added Avant Garde to the matplotlibrc.template) - monospace: Courier, Computer Modern Typewriter - cursive: Zapf Chancery The font.family setting is respected and should be used to switch from one family to another. Cursive fonts are supported with latex, but fantasy fonts are not (raises a warning and defaults to serif). If you use the usetex option, please kick the tires and let me know how it goes. Darren |
From: Christopher B. <Chr...@no...> - 2006-02-01 22:12:18
|
I guess it may be time for me to join matplotlib-devel. Eric Firing wrote: > Eric> If this strategy sounds reasonable to you, What was that strategy? > From: John Hunter <jdh...@ac...> > Just a comment for now. If you look at ax.add_collection, it does not > update the datalim. This is by design but it should be documented. I suspected as much. Could we add an optional flag, so that the user could ask that the datalim to be updated? > minx, maxx = (0, len(rangeSegments)) > miny = min([low for low in lows if low !=-1]) > maxy = max([high for high in highs if high != -1]) > > corners = (minx, miny), (maxx, maxy) > ax.update_datalim(corners) > ax.autoscale_view() I had figured I might need to do that, but it seems a shame to have to have a bunch of people writing that code all over the place. Another option might be to make code like this a method of the LineCollection class, and then you could do: ax.add_collection(MyLineCollection) ax.update_datalim(MyLineCollection.CalcLimits()) A question, though. The segments are in different data units, rather that axes units. In fact they are then shifter by the "offsets", so the above code wouldn't do it. That might be a good argument for making this calculation be a method of the LineCollection class. That method could be overridden, as appropriate, for a subclass. Then the axes.add_collection code could call that method to update the datalim. For performance purposes, you could make it no-op by default. One more thought: I suspect that in many cases a LineCollection will hold a set of segments that are all the same size. In my example, every segment is 5 points long, so I could store it in a NX5X2 array, and make the above calculation much faster. > As for how the datalim handling works, the syntax is Thanks for the overview. My last question: Is there a reason that axes.cla() doesn't reset datalim? thanks, -Chris |
From: Charlie M. <cw...@gm...> - 2006-02-01 21:27:07
|
The numarray headers are installed along with numarray. Try locating the file "numarray/arrayobject.h" on your computer. MPL is finding the numarray module, so they must be around somewhere. Say you find it in "/foo/bar/numarray/arrayobject.h". Try running this command: CPPFLAGS=3D"-I/foo/bar/" sudo python setup.py build If you can't find the file, then tell us how you installed numarray. - Charlie On 2/1/06, Samuel M. Smith <sm...@sa...> wrote: > I am trying to build 0.86.2 on OS X 10.4.4 with framework build of > python 2.4.2 > I have default gcc set to 3.3 > > when I run sudo python setup.py build I get the following error > > gcc -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused- > madd -fno-common -dynamic -DNDEBUG -g -O3 -Wall -Wstrict-prototypes - > Isrc -I. -I/usr/local/include -I/usr/include -I. -I/System/Library/ > Frameworks/Python.framework/Versions/2.3/include/python2.3 -c src/ > _na_transforms.cpp -o build/temp.darwin-8.4.0-Power_Macintosh-2.3/src/ > _na_transforms.o -DNUMARRAY=3D1 > src/_na_transforms.cpp:7:37: numarray/arrayobject.h: No such file or > directory > src/_na_transforms.cpp: In member function `Py::Object > Bbox::update_numerix(const Py::Tuple&)': > src/_na_transforms.cpp:455: error: `PyArrayObject' undeclared (first > use this > function) > src/_na_transforms.cpp:455: error: (Each undeclared identifier is > reported only > once for each function it appears in.) > src/_na_transforms.cpp:455: error: `x' undeclared (first use this > function) > src/_na_transforms.cpp:455: error: parse error before `)' token > src/_na_transforms.cpp:461: error: `y' undeclared (first use this > function) > src/_na_transforms.cpp:461: error: parse error before `)' token > src/_na_transforms.cpp: In member function `Py::Object > Transformation::numerix_x_y(const Py::Tuple&, const Py::Dict&)': > src/_na_transforms.cpp:848: error: parse error before `)' token > src/_na_transforms.cpp:854: error: parse error before `)' token > src/_na_transforms.cpp:879: error: `retx' undeclared (first use this > function) > src/_na_transforms.cpp:879: error: parse error before `)' token > src/_na_transforms.cpp:886: error: `rety' undeclared (first use this > function) > src/_na_transforms.cpp:886: error: parse error before `)' token > src/_na_transforms.cpp: In member function `Py::Object > Transformation::nonlinear_only_numerix(const Py::Tuple&, const > Py::Dict&)': > src/_na_transforms.cpp:933: error: parse error before `)' token > src/_na_transforms.cpp:939: error: parse error before `)' token > src/_na_transforms.cpp:955: error: parse error before `)' token > src/_na_transforms.cpp:962: error: parse error before `)' token > src/_na_transforms.cpp:970: error: `retmask' undeclared (first use this > function) > src/_na_transforms.cpp:973: error: parse error before `)' token > src/_na_transforms.cpp: In function `void init_na_transforms()': > src/_na_transforms.cpp:2068: error: `import_array' undeclared (first > use this > function) > error: command 'gcc' failed with exit status 1 > > It looks like its expecting there to be a source distribution of > numarray some place > > Anyone know what I need to do to fix this? > > > |
From: Samuel M. S. <sm...@sa...> - 2006-02-01 21:14:23
|
I am trying to build 0.86.2 on OS X 10.4.4 with framework build of python 2.4.2 I have default gcc set to 3.3 when I run sudo python setup.py build I get the following error gcc -fno-strict-aliasing -Wno-long-double -no-cpp-precomp -mno-fused- madd -fno-common -dynamic -DNDEBUG -g -O3 -Wall -Wstrict-prototypes - Isrc -I. -I/usr/local/include -I/usr/include -I. -I/System/Library/ Frameworks/Python.framework/Versions/2.3/include/python2.3 -c src/ _na_transforms.cpp -o build/temp.darwin-8.4.0-Power_Macintosh-2.3/src/ _na_transforms.o -DNUMARRAY=1 src/_na_transforms.cpp:7:37: numarray/arrayobject.h: No such file or directory src/_na_transforms.cpp: In member function `Py::Object Bbox::update_numerix(const Py::Tuple&)': src/_na_transforms.cpp:455: error: `PyArrayObject' undeclared (first use this function) src/_na_transforms.cpp:455: error: (Each undeclared identifier is reported only once for each function it appears in.) src/_na_transforms.cpp:455: error: `x' undeclared (first use this function) src/_na_transforms.cpp:455: error: parse error before `)' token src/_na_transforms.cpp:461: error: `y' undeclared (first use this function) src/_na_transforms.cpp:461: error: parse error before `)' token src/_na_transforms.cpp: In member function `Py::Object Transformation::numerix_x_y(const Py::Tuple&, const Py::Dict&)': src/_na_transforms.cpp:848: error: parse error before `)' token src/_na_transforms.cpp:854: error: parse error before `)' token src/_na_transforms.cpp:879: error: `retx' undeclared (first use this function) src/_na_transforms.cpp:879: error: parse error before `)' token src/_na_transforms.cpp:886: error: `rety' undeclared (first use this function) src/_na_transforms.cpp:886: error: parse error before `)' token src/_na_transforms.cpp: In member function `Py::Object Transformation::nonlinear_only_numerix(const Py::Tuple&, const Py::Dict&)': src/_na_transforms.cpp:933: error: parse error before `)' token src/_na_transforms.cpp:939: error: parse error before `)' token src/_na_transforms.cpp:955: error: parse error before `)' token src/_na_transforms.cpp:962: error: parse error before `)' token src/_na_transforms.cpp:970: error: `retmask' undeclared (first use this function) src/_na_transforms.cpp:973: error: parse error before `)' token src/_na_transforms.cpp: In function `void init_na_transforms()': src/_na_transforms.cpp:2068: error: `import_array' undeclared (first use this function) error: command 'gcc' failed with exit status 1 It looks like its expecting there to be a source distribution of numarray some place Anyone know what I need to do to fix this? |
From: mike c. <mc...@st...> - 2006-02-01 20:29:48
|
I figured it out myself self.axes.set_title(title) Sorry to bother you all... mc At 12:22 PM 2/1/2006, mike cantor wrote: >Hi, > >I embed a matplotlib canvas in a wxPython dialog. This works great and >the title of the figure is displayed as the window title for the dialog, >which is dandy. Here is a stripped down version of the code (minus >navigation toolbar etc) > >class PlotDialog(wx.Dialog): > def __init__( > self, parent, ID, title, MakeFigArgs, size=wx.DefaultSize, > pos=wx.DefaultPosition, style=wx.DEFAULT_DIALOG_STYLE): > > # Precreation code > pre = wx.PreDialog() > pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP) > pre.Create(parent, ID, title, pos, size, style) > self.PostCreate(pre) > > self.canvas = FigureCanvas(self, -1, self.figure) > self.figure = Figure(figsize=(5,4), dpi=100) > self.axes = self.figure.add_subplot(111) > self.axes.plot([1,2,3], [1,2,3] > >However, I also want the title to appear in the plot itself, so that when >I issue: > >self.canvas.Copy_to_Clipboard(event=evt). > >I have a title with my plot. Simply adding > >title("The Title") > >Does nothing. > >Any tips? >Thanks -mike |
From: mike c. <mc...@st...> - 2006-02-01 20:22:34
|
Hi, I embed a matplotlib canvas in a wxPython dialog. This works great and the title of the figure is displayed as the window title for the dialog, which is dandy. Here is a stripped down version of the code (minus navigation toolbar etc) class PlotDialog(wx.Dialog): def __init__( self, parent, ID, title, MakeFigArgs, size=wx.DefaultSize, pos=wx.DefaultPosition, style=wx.DEFAULT_DIALOG_STYLE): # Precreation code pre = wx.PreDialog() pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP) pre.Create(parent, ID, title, pos, size, style) self.PostCreate(pre) self.canvas = FigureCanvas(self, -1, self.figure) self.figure = Figure(figsize=(5,4), dpi=100) self.axes = self.figure.add_subplot(111) self.axes.plot([1,2,3], [1,2,3] However, I also want the title to appear in the plot itself, so that when I issue: self.canvas.Copy_to_Clipboard(event=evt). I have a title with my plot. Simply adding title("The Title") Does nothing. Any tips? Thanks -mike |
From: Eric F. <ef...@ha...> - 2006-02-01 20:04:51
|
Chris, I will forward to matplotlib-users a message from John including text that he had intended to send to that list and to you, and that answers some of your questions. I hope to have the problem fixed in cvs this weekend. Eric Christopher Barker wrote: [.......] > > I think the relevant questions are these: > > Is there a reason that add_collection doesn't reset the dataLim? > > Is there a reason that axes.cla() doesn't reset the dataLim? > > The fix will depend on those answers. I'd like to see both done. > > John? > > Thanks for your help, Eric. > > -Chris > > |
From: Christopher B. <Chr...@no...> - 2006-02-01 19:40:51
|
Eric Firing wrote: > Attached is a slight modification of your test case, with annotations. Thanks Eric, that does work. I'd rather the Z-order be set with the LineCollection under the plot, but it doesn't matter much, and I can probably manipulate that by hand if need be. > think it does what you want--sort of. But I agree that there is a bug. > After chasing references backwards and forwards through axes.py, > axis.py, ticker.py, and _transforms.cpp, I don't quite understand how > everything works, You got father than me. > Workarounds: either set the dataLim explicitly, or add the collection > after the plot command (as in the attached modified script). The latter > only works if the plot command sets the dataLim to be large enough to > cover everything in the collection. Yes, I may need to set dataLim myself after all. > I would like to make a genuine bugfix, but I do not yet understand all > this well enough to do so right now. Maybe John will chime in with a > good solution. I think the relevant questions are these: Is there a reason that add_collection doesn't reset the dataLim? Is there a reason that axes.cla() doesn't reset the dataLim? The fix will depend on those answers. I'd like to see both done. John? Thanks for your help, Eric. -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...> - 2006-02-01 19:08:07
|
>>>>> "Panos" == Panos Kassianidis <pk...@in...> writes: Panos> Hello everybody, I would like to use a solid line to plot a Panos> pulse. In other words let's say I have a number of zeros Panos> and ones and I would like to connect them like this with Panos> solid lines: use the plot kwarg steps, eg, plot(range(10), range(10), linestyle='steps') JDH |
From: sophana <so...@zi...> - 2006-02-01 17:46:35
|
I've run the two-scale demo, but there is a big problem when I zoom into it (in the gtk gui): Only one of the 2 scales (the left one) changes. Is there a way to select/zoom/move the second scale? I changed the date_demo.py to display 2 stock quotes, but it is actualy unusable because of this. Any help welcome Paul Barrett wrote: > Hello Andrea, > > Have you looked at the file, two_scales.py, in the examples > directory? This example would appear to show you how to create plots > with two or more scales per axis. > > -- Paul > > On 1/28/06, *Andrea Gavana* <and...@ti... > <mailto:and...@ti...>> wrote: > > Hello NG, > > please excuse my poor knowledge of matplotlib. I am searching > for a way > to do plots with multiple Y axes: for those of you that use > Matlab, I am > looking for something like plotyy and, if it's possible, also > something more > complicated like plotyyy or ploty4 (available at Matlab Central File > Exchange) that allow you to put a third and fourth Y-axis on a > plot, like in > this screenshot: > > http://www.mathworks.de/matlabcentral/fileexchange/util.do?objectId=4425&imgName=plot4y.png > <http://www.mathworks.de/matlabcentral/fileexchange/util.do?objectId=4425&imgName=plot4y.png> > > Is something like this possible with matplotlib? Is there anyone > that has a > small example on how to do it? > > Thank you in advance for every suggestion. > > Andrea. > > "Imagination Is The Only Weapon In The War Against Reality." > http://xoomer.virgilio.it/infinity77 > <http://xoomer.virgilio.it/infinity77> > > > > -- > Paul Barrett, PhD Johns Hopkins University > Assoc. Research Scientist Dept of Physics and Astronomy > Phone: 410-516-5190 Baltimore, MD 21218 |
From: Victoria G. L. <la...@st...> - 2006-02-01 16:15:29
|
Hi folks, I frequently need to make a vector plot that shows (dx,dy) displacements from a set of (x,y) points. "Quiver" doesn't seem to do quite what I want, although maybe I just can't figure out how to use it. Anyhow here is a function I wrote to do what I want using the pylab interface, in case it can be cleaned up and incorporated into matplotlib for general use. def vectorplot(x,y,dx,dy,scale=1): """ Generate a vector plot with lines emanating from the (x,y) points that represent the (dx,dy) displacement at each point. @param scale: Multiply (dx,dy) by this factor to make the displacements more visible @return: (cell_handle, displacement_handle) which can be used to pass to "legend" """ u=x+scale*dx v=y+scale*dy #loop through to make the plots for i in range(len(x)): dhandle=plot([x[i],u[i]],[y[i],v[i]],'o-b', label='shifts [* %4.1f]'%scale) #then overplot the origin points in a different color chandle=plot(x,y,'sk',label='zone') return (chandle,dhandle) cheers, Vicki Laidler |
From: Stefan v. d. W. <st...@su...> - 2006-02-01 15:59:43
|
Thanks, Charlie. I tried 0.9.5.2024 and it works fine. Cheers St=E9fan On Wed, Feb 01, 2006 at 10:44:59AM -0500, Charlie Moad wrote: > MPL 0.86.2 is tested against numpy 0.9.4, so could please test with > that release and let us know if you still have problems? >=20 > Thanks, > Charlie >=20 > On 2/1/06, Stefan van der Walt <st...@su...> wrote: > > Hi > > > > I am trying to get matplotlib working with numpy. When trying a > > simple plot, I get the following error: |
From: Charlie M. <cw...@gm...> - 2006-02-01 15:45:11
|
MPL 0.86.2 is tested against numpy 0.9.4, so could please test with that release and let us know if you still have problems? Thanks, Charlie On 2/1/06, Stefan van der Walt <st...@su...> wrote: > Hi > > I am trying to get matplotlib working with numpy. When trying a > simple plot, I get the following error: > > /home/stefan/lib/python2.4/site-packages/matplotlib/lines.py in set_data(= self, *args) > 274 my =3D ma.getmask(y) > 275 mask =3D ma.mask_or(mx, my) > --> 276 if mask is not ma.nomask: > 277 x =3D ma.masked_array(x, mask=3Dmask).compressed() > 278 y =3D ma.masked_array(y, mask=3Dmask).compressed() > > AttributeError: 'module' object has no attribute 'nomask' > > In [29]: matplotlib.__version__ > Out[29]: '0.86.2' > > In [30]: numpy.__version__ > Out[30]: '0.9.3.1881' > > I suppose ma.nomask does not exist in numpy. What is the best > workaround? > > Thanks for your time. > St=E9fan > > > ------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. Do you grep through log fi= les > for problems? Stop! Download the new AJAX search engine that makes > searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! > http://sel.as-us.falkag.net/sel?cmdlnk&kid=103432&bid#0486&dat=121642 > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > |
From: Stefan v. d. W. <st...@su...> - 2006-02-01 15:39:02
|
Hi I am trying to get matplotlib working with numpy. When trying a simple plot, I get the following error: /home/stefan/lib/python2.4/site-packages/matplotlib/lines.py in set_data(= self, *args) 274 my =3D ma.getmask(y) 275 mask =3D ma.mask_or(mx, my) --> 276 if mask is not ma.nomask: 277 x =3D ma.masked_array(x, mask=3Dmask).compressed() 278 y =3D ma.masked_array(y, mask=3Dmask).compressed() AttributeError: 'module' object has no attribute 'nomask' In [29]: matplotlib.__version__ Out[29]: '0.86.2' In [30]: numpy.__version__ Out[30]: '0.9.3.1881' I suppose ma.nomask does not exist in numpy. What is the best workaround? Thanks for your time. St=E9fan |
From: John H. <jdh...@ac...> - 2006-02-01 15:22:35
|
>>>>> "Vidar" == Vidar Gundersen <vid...@37...> writes: Vidar> i was wondering a bit about how to treat missing data when Vidar> loading or saving data with pylab. numarray has a module Vidar> for representing NaN, Inf (and i guess numpy have it). but Vidar> what about reading files with missing data, or NaNs? The latest matplotlib allows you to pass converter functions into load so you could write a custom one along the lines of def float_or_nan(x): if x=='None': return nan else: return float(x) You could write something similar for save Vidar> another note on pylab.load(): wouldn't it be fairly easy to Vidar> detect the delimiter symbol automatically? Probably -- let's see it :-) JDH |
From: Vidar G. <vid...@37...> - 2006-02-01 15:03:35
|
i was wondering a bit about how to treat missing data when loading or saving data with pylab. numarray has a module for representing NaN, Inf (and i guess numpy have it). but what about reading files with missing data, or NaNs? another note on pylab.load(): wouldn't it be fairly easy to detect the delimiter symbol automatically? |
From: Eric F. <ef...@ha...> - 2006-02-01 08:36:31
|
Christopher Barker wrote: > Christopher Barker wrote: > >> Maybe I'll try to make a small sample that demonstrates the issue. >> stay tuned. > > > OK, read the previous posts for background, or ignore them, and just > read this one. I made a small sample, and found that using a > LineCollection with axes.add_collection does something weird to the data > limits that axes sets. I've enclosed a small sample that demonstrates > the problem. Chris, Attached is a slight modification of your test case, with annotations. I think it does what you want--sort of. But I agree that there is a bug. After chasing references backwards and forwards through axes.py, axis.py, ticker.py, and _transforms.cpp, I don't quite understand how everything works, but I think this is part of the problem: axes.has_data() is being used to determine whether to update the dataLim from scratch, or to start with previous values. axes.has_data() is True if any drawing artist (Line, Collection, etc.) has been added to the axes. So, after clearing the axes, adding a LineCollection tells the dataLim update method (called by the subsequent plot()) to use the old information, even though Collections (unlike Lines) do not change the dataLim. In other words, in your original script, I think that adding the collection was preventing plot() from setting the axes to a smaller value. Workarounds: either set the dataLim explicitly, or add the collection after the plot command (as in the attached modified script). The latter only works if the plot command sets the dataLim to be large enough to cover everything in the collection. I would like to make a genuine bugfix, but I do not yet understand all this well enough to do so right now. Maybe John will chime in with a good solution. Eric |
From: Christopher B. <Chr...@no...> - 2006-02-01 01:01:23
|
Just for the record, I've solved all this, for the moment, by clearing the entire figure, and starting again with a brand new axes. It does seem like there's a bug in the axes.clear() method, however, I should be able to just .clear() and add stuff again, shouldn't I? -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: Christopher B. <Chr...@no...> - 2006-02-01 00:44:18
|
Christopher Barker wrote: > Maybe I'll try to make a small sample that demonstrates the issue. stay > tuned. OK, read the previous posts for background, or ignore them, and just read this one. I made a small sample, and found that using a LineCollection with axes.add_collection does something weird to the data limits that axes sets. I've enclosed a small sample that demonstrates the problem. Here is the plotting code itself: # Do some plotting ax.plot(offsets[:,0], offsets[:,1], 'o') # clear the axes, and try again, with different data. ax.clear() offsets *= .1 coll = LineCollection(segments, offsets=offsets, transOffset=ax.transData, # transforms the x,y offsets ) # points/72.*dpi = pixels -- see matplotlib.transforms trans = scale_transform(fig.dpi/Value(72.), fig.dpi/Value(72.)) coll.set_transform(trans) # the points to pixels transform ax.add_collection(coll) ax.plot(offsets[:,0], offsets[:,1], 'o') ax.autoscale_view() pylab.show() running this, you get the axes set to data limits appropriate to the first ax.plot call, before the ax.clear() call. (the second has values 1/10 as large. However, if you don't do the first plot call, it all scales correctly. Now it's even weirder. If you do the first plot call (with the larger data), but comment out add_collection() call, it scales correctly. So it seems that using add_collection someone fixes the data limits to the previous value, even after the ax.clear() call. AFAICT, looking at the axes class code, this shouldn't happen. add_collection doesn't do much at all. Also, after axes.clear() is called, ax.has_data() returns False, so when axes.update_datalim is called, the old dataLim should be ignored. by the way, it looks like axes.cla() should perhaps have this in it: self.dataLim = unit_bbox() or maybe: self._set_lim_and_transforms() I've gotten a bit lost in all this: HELP! -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... |