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
(36) |
2
(10) |
3
(8) |
4
|
5
(4) |
6
(15) |
7
(17) |
8
(3) |
9
(8) |
10
(5) |
11
(2) |
12
(5) |
13
(5) |
14
(15) |
15
(3) |
16
(10) |
17
(6) |
18
(2) |
19
(1) |
20
(11) |
21
(33) |
22
(13) |
23
(14) |
24
(15) |
25
(4) |
26
(5) |
27
(9) |
28
(12) |
29
(7) |
30
(8) |
31
(6) |
|
From: Jordan D. <jd...@eo...> - 2007-08-31 23:32:52
|
I've been trying to plot a pcolor over a contourf with a masked array in the pcolor so that parts of the contour will show through underneath, but whenever I try to do this the pcolor wipes out the contourf. I can do this fine with a contourf over another contourf, but I'm plotting model topography, and I would really prefer to leave the discretization visible instead of showing contourf's interpolation. Any way to get a pcolor to plot over a contourf without wiping out the contourf beneath it? Jordan |
From: John H. <jd...@gm...> - 2007-08-31 13:59:57
|
On 8/31/07, Romain Bignon <ro...@in...> wrote: > Hello, > > I want to get pixels position of a Text object on my imagine, but there isn't > any methods of this class to get them. > > How can I do ? You can use the t.get_window_extent() method of the text object, with the caveat that this only works *after* the canvas has been drawn, so you need to force a draw first. Makre sure you use the same DPI in the figure and savefig commands if you need these coords for working with hardcopy from pylab import figure, show fig = figure(figsize=(6,6), dpi=72) ax = fig.add_subplot(111) ax.plot([1,2,3]) t = ax.text(1,2,'hi') fig.canvas.draw() left, bottom, width, height = t.get_window_extent().get_bounds() print left, bottom, width, height fig.savefig('test', dpi=72) # make sure you use the same DPI if you save show() |
From: Christian M. <mee...@un...> - 2007-08-31 12:39:52
|
Hi, is it somehow possible to have a hatch in parts of the background, which would achieve something like this pseudo-parameter to axvspan pylab.axvspan(2, 10, hatch='//')? TIA Christian |
From: Petr D. <da...@uc...> - 2007-08-31 08:19:26
|
OK, I've got it. Previously, I checked the quality of the output image by two means: by visual inspection in gv and by checking the size of the output eps images. I was puzzled by the different sizes of the images at magnification 1. Also, convert produces much larger eps files. When the size of the output image is set to 6.3246cm (1494px at 600dpi) and the axes are turned off, both versions appear identical when printed. Thanks for your help, petr On Thu, 2007-08-30 at 20:35, Jouni K. Seppänen wrote: > I don't see a big difference between test-600.eps and test-convert.eps > when viewed in gv with magnification 10 and 0.1, respectively. Obviously > there is some resampling in test-600.eps: your source image is 1494 by > 1494 pixels large, which at 600 dpi is larger than the 5 by 5 cm figure > created by the script (and the axes are even smaller). test-convert.eps > has a bounding box of 0 0 1494 1494, so obviously it is a non-resampled > image at 72 dpi. > > If the problem you are alluding to is in the resampling, perhaps > varying the interpolation algorithm will produce a better result? > See the docstring of imshow. > > To get a non-resampled image, figimage should work, but it doesn't seem > to understand PIL images yet... |
From: Romain B. <ro...@in...> - 2007-08-31 07:38:14
|
Hello, I want to get pixels position of a Text object on my imagine, but there isn't any methods of this class to get them. How can I do ? Regards, -- Romain Bignon - http://progs.coderz.info http://www.inl.fr |
From: Christian M. <mee...@un...> - 2007-08-31 07:29:12
|
Hoi, There is still MPL's polyfit function and I have to admit that Steve Schmerler's solution looks better that mine, but I've pasted a quick & dirty solution here: http://www.python-forum.de/topic-8363.html It shows the use of polyfit as well as (almost) Steve's approach. Further examples on linear regression and polynomal regression can be found in http://matplotlib.sourceforge.net/users_guide_0.90.0.pdf Also, you might want to have a closer look on the scipy web page: http://www.scipy.org/ . Cheers Christian |
From: Martin B. <nee...@ya...> - 2007-08-30 21:44:26
|
Hi - I am writing a script that will generate many figures. Currently this script lives in matlab and outputs these figures to a single .ps file: if( first ) print( nfig, '-dpsc2', '-r300', '-loose', filename ); else print( nfig, '-dpsc2', '-r300', '-loose', '-append', filename ); end I found the savefig() function. My question is: does it have something similar to the '-append' flag? If not, is there another convenient way to save multiple figures to the same .ps file? Thanks. martin. --------------------------------- Luggage? GPS? Comic books? Check out fitting gifts for grads at Yahoo! Search. |
From: <jk...@ik...> - 2007-08-30 18:37:24
|
Petr Danecek <da...@uc...> writes: > On Fri, 2007-08-24 at 20:03, Jouni K. Seppänen wrote: > >> savefig('foo10.ps', dpi=10) >> savefig('foo100.ps', dpi=100) > > In fact, the dpi option does change the resulting PS file, but the > quality is still very poor - see the example > http://www.ucl.cas.cz/~petr/matplotlib-test.tgz I don't see a big difference between test-600.eps and test-convert.eps when viewed in gv with magnification 10 and 0.1, respectively. Obviously there is some resampling in test-600.eps: your source image is 1494 by 1494 pixels large, which at 600 dpi is larger than the 5 by 5 cm figure created by the script (and the axes are even smaller). test-convert.eps has a bounding box of 0 0 1494 1494, so obviously it is a non-resampled image at 72 dpi. If the problem you are alluding to is in the resampling, perhaps varying the interpolation algorithm will produce a better result? See the docstring of imshow. To get a non-resampled image, figimage should work, but it doesn't seem to understand PIL images yet... -- Jouni K. Seppänen http://www.iki.fi/jks |
From: <jk...@ik...> - 2007-08-30 18:04:51
|
"Alexander Dietz" <Ale...@as...> writes: > Although the scatter command is called later, any point drawn with the " > scatter"-command lies behind the black crosses drawn by the "plot" command. > Any ideas how to get the order right? Set the zorder property. Try e.g.: clf() l=plot(rand(50), rand(50), 'kx') p=scatter(rand(20), rand(20), 40, c=rand(20), faceted=False) getp(l[0], 'zorder') getp(p, 'zorder') setp(p, zorder=3) -- Jouni K. Seppänen http://www.iki.fi/jks |
From: Alexander D. <Ale...@as...> - 2007-08-30 16:19:59
|
Hi, I have problems with plotting in matplotlib. I want to plot something and then overlay this plot with a scatter plot, so like this: clf() plot( sx, sy, 'kx') hold(True) scatter( ix, iy, 40, c=iz, faceted=False) colorbar() hold(False) Although the scatter command is called later, any point drawn with the " scatter"-command lies behind the black crosses drawn by the "plot" command. Any ideas how to get the order right? Cheers Alex |
From: Steve S. <el...@gm...> - 2007-08-30 13:48:41
|
Wolfgang Kerzendorf wrote: > I know this is not completely matplotlib related but perhaps you can > help me none the less: > I want to fit a curve to a set of data. It's a very easy curve: y=ax+b. > But I want errors for a and b and not only the rms. Is that possible. > What tasks do you recommend for doing that. > Thanks in advance > Wolfgang > from http://mathworld.wolfram.com/LeastSquaresFitting.html: (but here: y = a*x+b, so a <-> b)! For the standard errors on a and b: n = float(len(x)) xm = mean(x) ym = mean(y) SSxx = dot(x,x) - n*xm**2.0 SSyy = dot(y,y) - n*ym**2.0 SSxy = dot(x,y) - n*xm*ym r = sqrt(SSxy**2.0 / (SSxx*SSyy)) s = sqrt((SSyy - (SSxy**2.0 / SSxx)) / (n-2.0)) sea = s / sqrt(SSxx) seb = s * sqrt(1.0/n + (xm**2.0 / SSxx)) The values of sea, seb agree with gnuplot's "Asymptotic Standard Error". -- cheers, steve Random number generation is the art of producing pure gibberish as quickly as possible. |
From: Peter I. H. <pe...@gm...> - 2007-08-30 11:21:42
|
On 8/30/07, Wolfgang Kerzendorf <wke...@go...> wrote: > I know this is not completely matplotlib related but perhaps you can > help me none the less: > I want to fit a curve to a set of data. It's a very easy curve: y=ax+b. > But I want errors for a and b and not only the rms. Is that possible. > What tasks do you recommend for doing that. gnuplot can do that in a relatively painless way. |
From: Wolfgang K. <wke...@go...> - 2007-08-30 08:35:13
|
I know this is not completely matplotlib related but perhaps you can help me none the less: I want to fit a curve to a set of data. It's a very easy curve: y=ax+b. But I want errors for a and b and not only the rms. Is that possible. What tasks do you recommend for doing that. Thanks in advance Wolfgang |
From: Petr D. <da...@uc...> - 2007-08-30 06:45:16
|
In fact, the dpi option does change the resulting PS file, but the quality is still very poor - see the example http://www.ucl.cas.cz/~petr/matplotlib-test.tgz pd On Fri, 2007-08-24 at 20:03, Jouni K. Seppänen wrote: > I just tried with current svn, and the following script produces two > results that have visibly different resolutions: > > #!/usr/bin/python > from pylab import * > foo = rand(10,10) > imshow(foo) > savefig('foo10.ps', dpi=10) > savefig('foo100.ps', dpi=100) > > Perhaps the original poster could show a bit of code where the scaling > fails? > > (I'm not sure if figimage is doing the right thing, though...) |
From: Jed F. <jed...@gm...> - 2007-08-29 17:36:52
|
nie ninesun wrote: > > i am new user of matplotlib,i want display two curve on one graph.but i > want these two curve have same X axis.but the Y axis is not same... > Seeing as this came up. Is it possible to have more than 2 y axes? For example: http://www.unm.edu/~jdfrech/fire-climate.png The above figure was created by generating 2 figures of the same size in matplotlib, one with a pair of twinx() y axes and one with a single y axis then manually splicing them together in Inkscape. -- View this message in context: http://www.nabble.com/multip-axis-tf4344576.html#a12392038 Sent from the matplotlib - users mailing list archive at Nabble.com. |
From: Eric F. <ef...@ha...> - 2007-08-29 16:49:04
|
Pierre GM wrote: > On Wednesday 29 August 2007 10:02:14 John Morgan wrote: >> I have some data, which I'd like to plot using matplotlib. Some of the data >> has been flagged by some other software, and I have a boolean array, the >> same shape as my original data which tells me which data has been flagged John, If you are only plotting symbols, you can either use masked arrays, as Pierre suggests, or simply plot the selected points: plot(x[b], y[b], '.', x[~b], y[~b], 'x') where x, y, and b are all numpy arrays of the same shape. >> .... >> I'm sure I can get this approach to work but I thought I'd ask if there's >> there a more elegant way to achieve the same aim. > > two words: masked arrays. In the matplotlib distribution, see examples/masked_demo.py > >>>> import numpy >>>> flagged = numpy.ma(initial_array, mask=boolean_array) numpy.ma.array(...) >>>> plot(flagged) > > That will take care of the unmasked data. > For the masked values, just revert the mask. |
From: Pierre GM <pgm...@gm...> - 2007-08-29 15:50:10
|
On Wednesday 29 August 2007 10:02:14 John Morgan wrote: > I have some data, which I'd like to plot using matplotlib. Some of the data > has been flagged by some other software, and I have a boolean array, the > same shape as my original data which tells me which data has been flagged > .... > I'm sure I can get this approach to work but I thought I'd ask if there's > there a more elegant way to achieve the same aim. two words: masked arrays. >>>import numpy >>>flagged = numpy.ma(initial_array, mask=boolean_array) >>>plot(flagged) That will take care of the unmasked data. For the masked values, just revert the mask. |
From: John M. <mo...@gm...> - 2007-08-29 14:02:24
|
I have some data, which I'd like to plot using matplotlib. Some of the data has been flagged by some other software, and I have a boolean array, the same shape as my original data which tells me which data has been flagged. What I'd like to do is plot the unflagged data as a single pixels ',' and flagged data as crosses 'x'. At the moment I'm plotting all of the data as single pixels, and then replotting everything as crosses, setting the unflagged data to some negative number and setting the axes to hide them away off the bottom of the graph, however this approach is a bit of a pain as you often end up with the crosses showing up on the bottom of the graph etc. I'm sure I can get this approach to work but I thought I'd ask if there's there a more elegant way to achieve the same aim. Many thanks in advance, John Morgan |
From: Bernhard V. <Ber...@de...> - 2007-08-29 08:57:12
|
Here's a legend function which allows you to specify loc='outer right'. The part for 'outer left' doesn't work. It basically wrappes the pylab.legendmethod, it rescales the plot and sets the location of the legend to coordinates outside of the current axes. def legend(*args, **kwargs): """ Overwrites the pylab legend function. It adds another location identfier 'outer right' which locates the legend on the right side of the plot The args and kwargs are forwarded to the pylab legend function """ if kwargs.has_key('loc'): loc = kwargs['loc'] loc = loc.split() if loc[0] == 'outer': # make a legend with out the location # remove the location setting from the kwargs kwargs.pop('loc') leg = pylab.legend(loc=(0,0), *args, **kwargs) frame = leg.get_frame() currentAxes = pylab.gca() currentAxesPos = currentAxes.get_position() # scale plot by the part which is taken by the legend plotScaling = frame.get_width()/currentAxesPos[2] if loc[1] == 'right': # scale the plot currentAxes.set_position((currentAxesPos[0], currentAxesPos[1], currentAxesPos[2] * (1-plotScaling), currentAxesPos[3])) # set x and y coordinates of legend leg._loc = (1 + leg.axespad, 1 - frame.get_height()) # doesn't work #if loc[1] == 'left': # # scale the plot # currentAxes.set_position((currentAxesPos[0] + frame.get_width(), # currentAxesPos[1], # currentAxesPos[2] * (1-plotScaling), # currentAxesPos[3])) # # set x and y coordinates of legend # leg._loc = (1 -.05 - leg.axespad - frame.get_width(), 1 - frame.get_height()) pylab.draw_if_interactive() return leg return pylab.legend(*args, **kwargs) Cheers! Bernhard On 8/27/07, Wolfgang Kerzendorf <wke...@go...> wrote: > > Is there any way to display a legend in a second window or outside the > plot? > thanks in advance > Wolfgang > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > |
From: Romain B. <ro...@in...> - 2007-08-29 07:49:42
|
Hello, Thanks to your answer. But now, how can I get Text position on image please ? Regards, -- Romain Bignon - http://progs.coderz.info http://www.inl.fr |
From: Benoit D. <ben...@uc...> - 2007-08-29 06:53:01
|
Hey, twinx() is what you need. Download the examples (http://matplotlib.sourceforge.net/=20 matplotlib_examples_0.90.0.zip). There is an example on how to use =20 twinx() (this is the file two_scales.py) Keep on Rockin' Benoit Le 29-ao=C3=BBt-07 =C3=A0 00:03, nie ninesun a =C3=A9crit : > hi everyone > i am new user of matplotlib,i want display two curve on one =20 > graph.but i want these two curve have same X axis.but the Y axis is =20= > not same.I read the sample of matplotlib,there is an example about =20 > subplot.but i don't hope to use such one,These two curve should be =20 > displayed in on plot in my application with diffrent axis.Doese =20 > matplotlib have such function? or if there is an demo code about it? > thanks > xz_nie > > _________________________________________________________________ > =E4=BA=AB=E7=94=A8=E4=B8=96=E7=95=8C=E4=B8=8A=E6=9C=80=E5=A4=A7=E7=9A=84= =E7=94=B5=E5=AD=90=E9=82=AE=E4=BB=B6=E7=B3=BB=E7=BB=9F=E2=80=94 MSN = Hotmail=E3=80=82 http://=20 > www.hotmail.com > > ----------------------------------------------------------------------=20= > --- > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a =20 > browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Dr. Benoit Donnet Universit=C3=A9 Catholique de Louvain (UCL) Facult=C3=A9 des Sciences Appliqu=C3=A9es - D=C3=A9partement = d'Ing=C3=A9nierie =20 Informatique (INGI) Place Sainte Barbe, 2 1348 Louvain-la-Neuve Belgium Phone: +32 10 47 87 18 Home page: http://inl.info.ucl.ac.be/donnet |
From: nie n. <xz...@ho...> - 2007-08-28 22:03:17
|
hi everyone i am new user of matplotlib,i want display two curve on one graph.but i want these two curve have same X axis.but the Y axis is not same.I read the sample of matplotlib,there is an example about subplot.but i don't hope to use such one,These two curve should be displayed in on plot in my application with diffrent axis.Doese matplotlib have such function? or if there is an demo code about it? thanks xz_nie _________________________________________________________________ 享用世界上最大的电子邮件系统― MSN Hotmail。 http://www.hotmail.com |
From: Alen R. <ale...@gm...> - 2007-08-28 20:39:30
|
There were decimal.Decimal object type values in my array. I converted those to float and all is well now. Don't understand though why the command line version worked as it was. Hmm... :-) -Alen On 8/28/07, Alen Ribic <ale...@gm...> wrote: > I get the following error when its gets to the line where the bar(...) > function is called: > > "Bbox::update_numerix_xy expected numerix array" > > What does this mean? is it referring to the the left, height or width...? > > If I execute the same code form the command line it works! But, If I > call the code from a Web Application then is gives me that error > above. > > I tried via the pylab and matplotlib api. Both give the same error. > > Thx > > -Alen > |
From: John H. <jd...@gm...> - 2007-08-28 19:37:05
|
On 8/28/07, Tom Haddon <to...@gr...> wrote: > fig.savefig(OUTPUTFILE) savefig has it's own DPI ( so screen resolution and print resolution can differ). So set the figsize in the Figure init method as before, and then psas dpi to savefig fig.savefig(blah, dpi=300) JDH |
From: Tom H. <to...@gr...> - 2007-08-28 19:06:39
|
Hi Folks, I'm creating a basic graph as follows: revnos = [ p['revno'] for p in data ] durations = [ p['duration'] for p in data ] majorFormatter = FormatStrFormatter('%d') matplotlib.use('Cairo') fig = Figure() canvas = FigureCanvas(fig) ax = fig.add_subplot(111) ax.plot(revnos, durations, '-') ax.set_title('PQM pre-commit hook durations from Revision %s to %s' % (revnos[0], revnos[-1])) ax.xaxis.set_major_formatter(majorFormatter) ax.grid(True) ax.set_xlabel('Revision') ax.set_ylabel('Duration in Minutes') canvas.draw() fig.savefig(OUTPUTFILE) Seems to give me a default size of 1200x900 (which I assume is somehow related to my screen size) - I've tried altering the fig = line as follows: fig = Figure(figsize=(8,6), dpi=100) but can't seem to change the output size of the image. Thanks, Tom -- ---------------------------------- Tom Haddon mailto:to...@gr... m +1.415.871.4180 www.greenleaftech.net |