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
(2) |
2
(6) |
3
|
4
(7) |
5
(10) |
6
(4) |
7
(17) |
8
(4) |
9
(1) |
10
(1) |
11
(19) |
12
(14) |
13
(8) |
14
(14) |
15
(9) |
16
(1) |
17
|
18
|
19
(8) |
20
(5) |
21
(7) |
22
(13) |
23
(1) |
24
|
25
(4) |
26
(2) |
27
(17) |
28
(13) |
29
(6) |
30
(6) |
31
(5) |
|
|
|
|
|
|
Thank You Phil, It did it correctly. TkAgg is good with interactive plotting. with best regards, Sudheer From:Phil Elson <pel...@gm...> To: Sudheer Joseph <sud...@ya...> Cc: "mat...@li..." <mat...@li...> Sent: Tuesday, 12 March 2013 7:53 PM Subject: Re: [Matplotlib-users] matplotlib multiple windows comparison I hadn't spotted you were using the WxAgg backend too - this looks like the same bug that Brendan reported yesterday. The easiest solution would be to use another back-end until this is fixed. Do you have 'TkAgg' available? I currently do not have a wx installation to hand to try out any workarounds at the moment. Regards, On 12 March 2013 14:00, Sudheer Joseph <sud...@ya...> wrote: Thank you Phil, > But I had tried it earlier after seeing a another mail thread. I get command prompt but no figure pops up. > > >In [3]: import matplotlib.pyplot as plt > > >In [4]: plt.ion() > > >In [5]: plt.plot(range(10)) >Out[5]: [<matplotlib.lines.Line2D at 0x410f250>] > > >In [6]: > > > Any way out?? >with best regards, >Sudheer >*************************************************************** >Sudheer Joseph >Indian National Centre for Ocean Information Services >Ministry of Earth Sciences, Govt. of India >POST BOX NO: 21, IDA Jeedeemetla P.O. >Via Pragathi Nagar,Kukatpally, Hyderabad; Pin:5000 55 >Tel:+91-40-23886047(O),Fax:+91-40-23895011(O), >Tel:+91-40-23044600(R),Tel:+91-40-9440832534(Mobile) >E-mail:sjo...@gm...;sud...@ya... >Web- http://oppamthadathil.tripod.com >*************************************************************** > > >________________________________ > From: Phil Elson <pel...@gm...> >To: Sudheer Joseph <sud...@ya...> >Cc: "mat...@li..." <mat...@li...> >Sent: Tuesday, 12 March 2013 3:08 PM >Subject: Re: [Matplotlib-users] matplotlib multiple windows comparison > > > >Hi Sudheer, > >Try the interactive mode (http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.ion): > > >>>> import matplotlib.pyplot as plt >>>> plt.ion() >>>> plt.plot(range(10)) >[<matplotlib.lines.Line2D object at 0x1c565d0>] > >**a figure pops up here and hands you back the python command line** > > >>>> > > >Regards, > > > > > > > >On 12 March 2013 00:04, Sudheer Joseph <sud...@ya...> wrote: > >Dear experts, >>Is there a way to get back to the prompt after a plot is made and displayed with out closing the plot? >>The objective is to compare to plots or check some aspect about the plot made from the loaded variables. This is the standard behavior of matlab after plotting we get the prompt and we can make another plot if we want to compare 2. I know there is subplot option but it will be of small size if I need to make a spatial map at to time intervals and compare. The detail of my matplotlib is below >> >> >>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >>I use Ubuntu 12.04 64 bit version >>and >> >> >>In [3]: matplotlib.get_backend() >>Out[3]: 'WXAgg' >> >> >>In [4]: matplotlib.__version__ >>Out[4]: '1.2.0' >> >> >>with best regards, >>Sudheer >>*************************************************************** >>Sudheer Joseph >>Indian National Centre for Ocean Information Services >>Ministry of Earth Sciences, Govt. of India >>POST BOX NO: 21, IDA Jeedeemetla P.O. >>Via Pragathi Nagar,Kukatpally, Hyderabad; Pin:5000 55 >>Tel:+91-40-23886047(O),Fax:+91-40-23895011(O), >>Tel:+91-40-23044600(R),Tel:+91-40-9440832534(Mobile) >>E-mail:sjo...@gm...;sud...@ya... >>Web- http://oppamthadathil.tripod.com >>*************************************************************** >> >> >>________________________________ >>. >> >>------------------------------------------------------------------------------ >>Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester >>Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the >>endpoint security space. For insight on selecting the right partner to >>tackle endpoint security challenges, access the full report. >>http://p.sf.net/sfu/symantec-dev2dev >>_______________________________________________ >>Matplotlib-users mailing list >>Mat...@li... >>https://lists.sourceforge.net/lists/listinfo/matplotlib-users >> >> > > >
I hadn't spotted you were using the WxAgg backend too - this looks like the same bug that Brendan reported yesterday. The *easiest* solution would be to use another back-end until this is fixed. Do you have 'TkAgg' available? I currently do not have a wx installation to hand to try out any workarounds at the moment. Regards, On 12 March 2013 14:00, Sudheer Joseph <sud...@ya...> wrote: > Thank you Phil, > But I had tried it earlier after seeing a > another mail thread. I get command prompt but no figure pops up. > > In [3]: import matplotlib.pyplot as plt > > In [4]: plt.ion() > > In [5]: plt.plot(range(10)) > Out[5]: [<matplotlib.lines.Line2D at 0x410f250>] > > In [6]: > > Any way out?? > with best regards, > Sudheer > *************************************************************** > Sudheer Joseph > Indian National Centre for Ocean Information Services > Ministry of Earth Sciences, Govt. of India > POST BOX NO: 21, IDA Jeedeemetla P.O. > Via Pragathi Nagar,Kukatpally, Hyderabad; Pin:5000 55 > Tel:+91-40-23886047(O),Fax:+91-40-23895011(O), > Tel:+91-40-23044600(R),Tel:+91-40-9440832534(Mobile) > E-mail:sjo...@gm...;sud...@ya... > Web- http://oppamthadathil.tripod.com > *************************************************************** > ------------------------------ > *From:* Phil Elson <pel...@gm...> > *To:* Sudheer Joseph <sud...@ya...> > *Cc:* "mat...@li..." < > mat...@li...> > *Sent:* Tuesday, 12 March 2013 3:08 PM > *Subject:* Re: [Matplotlib-users] matplotlib multiple windows comparison > > Hi Sudheer, > > Try the interactive mode ( > http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.ion): > > > >>> import matplotlib.pyplot as plt > >>> plt.ion() > >>> plt.plot(range(10)) > [<matplotlib.lines.Line2D object at 0x1c565d0>] > > **a figure pops up here and hands you back the python command line** > > >>> > > Regards, > > > > > On 12 March 2013 00:04, Sudheer Joseph <sud...@ya...> wrote: > > Dear experts, > Is there a way to get back to the prompt after a plot is made and > displayed with out closing the plot? > The objective is to compare to plots or check some aspect about the plot > made from the loaded variables. This is the standard behavior of matlab > after plotting we get the prompt and we can make another plot if we want to > compare 2. I know there is subplot option but it will be of small size if I > need to make a spatial map at to time intervals and compare. The detail of > my matplotlib is below > > %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% > I use Ubuntu 12.04 64 bit version > and > > In [3]: matplotlib.get_backend() > Out[3]: 'WXAgg' > > In [4]: matplotlib.__version__ > Out[4]: '1.2.0' > > with best regards, > Sudheer > *************************************************************** > Sudheer Joseph > Indian National Centre for Ocean Information Services > Ministry of Earth Sciences, Govt. of India > POST BOX NO: 21, IDA Jeedeemetla P.O. > Via Pragathi Nagar,Kukatpally, Hyderabad; Pin:5000 55 > Tel:+91-40-23886047(O),Fax:+91-40-23895011(O), > Tel:+91-40-23044600(R),Tel:+91-40-9440832534(Mobile) > E-mail:sjo...@gm...;sud...@ya... > Web- http://oppamthadathil.tripod.com > *************************************************************** > ------------------------------ > *.* > > > > ------------------------------------------------------------------------------ > Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > endpoint security space. For insight on selecting the right partner to > tackle endpoint security challenges, access the full report. > http://p.sf.net/sfu/symantec-dev2dev > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > > > > >
Hi, Did some more testing with the "http://matplotlib.org/examples/user_interfaces/embedding_in_wx5.html" example and see the same problem/crash. Attached the slightly adapted version of the script (using wxPython 2.9 and wx.App instead of wx.SimpleApp which is deprecated in 2.9) and the setup.py script I used to generated the py2exe'd version. The py2exe'd version works without problem on my Intel Core i5 but crashes on an AMD Athlon 2400+ equiped PC. Anyone has some tips, ideas on how to track this down? Best regards Werner On 11/03/2013 20:02, Werner F. Bruhin wrote: > Hi, > > Some time ago I tried to upgrade from an old version of mpl 0.99 to 1.0 > but couldn't get it to work with py2exe and running on a Athlon PC. > > I finally got around to upgrade things and have another go at this. > > I am now on: > Python 2.7 > Numpy 1.6.1 /arch nosse > mpl 1.2.0 > > I see a hard crash on the Athlon PC (i.e. no traceback and the MS Win > error "App encountered a problem, do you want to report to MS". > > Trying to narrow it down I don't think it has to do with numpy as I use > it elsewhere in the app together with wxPython/FloatCanvas without any > issue and when I track where the crash is happening with print > statements it happens on this line: > > print 'plot panel 1' > > # initialize matplotlib stuff > self.figure = mpl.figure.Figure(figsize=(5, 4), dpi=75, > facecolor='white', > edgecolor='white') > print 'plot panel 2' > > I still see the first print statement but not the second, my imports are > as follows: > > import matplotlib as mpl > mpl.use('WXAgg') > from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as > FigureCanvas > > I know I don't provide a lot of information (at least not yet), but has > anyone come across some similar crash with py2exe and mpl when one > creates a Figure? > > Any tips on how to further narrow this down or even better on what is > needed to fix it are very welcome. > > Best regards > Werner > > ------------------------------------------------------------------------------ > Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > endpoint security space. For insight on selecting the right partner to > tackle endpoint security challenges, access the full report. > http://p.sf.net/sfu/symantec-dev2dev > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > >
Thank you Phil, But I had tried it earlier after seeing a another mail thread. I get command prompt but no figure pops up. In [3]: import matplotlib.pyplot as plt In [4]: plt.ion() In [5]: plt.plot(range(10)) Out[5]: [<matplotlib.lines.Line2D at 0x410f250>] In [6]: Any way out?? with best regards, Sudheer *************************************************************** Sudheer Joseph Indian National Centre for Ocean Information Services Ministry of Earth Sciences, Govt. of India POST BOX NO: 21, IDA Jeedeemetla P.O. Via Pragathi Nagar,Kukatpally, Hyderabad; Pin:5000 55 Tel:+91-40-23886047(O),Fax:+91-40-23895011(O), Tel:+91-40-23044600(R),Tel:+91-40-9440832534(Mobile) E-mail:sjo...@gm...;sud...@ya... Web- http://oppamthadathil.tripod.com *************************************************************** ________________________________ From: Phil Elson <pel...@gm...> To: Sudheer Joseph <sud...@ya...> Cc: "mat...@li..." <mat...@li...> Sent: Tuesday, 12 March 2013 3:08 PM Subject: Re: [Matplotlib-users] matplotlib multiple windows comparison Hi Sudheer, Try the interactive mode (http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.ion): >>> import matplotlib.pyplot as plt >>> plt.ion() >>> plt.plot(range(10)) [<matplotlib.lines.Line2D object at 0x1c565d0>] **a figure pops up here and hands you back the python command line** >>> Regards, On 12 March 2013 00:04, Sudheer Joseph <sud...@ya...> wrote: Dear experts, >Is there a way to get back to the prompt after a plot is made and displayed with out closing the plot? >The objective is to compare to plots or check some aspect about the plot made from the loaded variables. This is the standard behavior of matlab after plotting we get the prompt and we can make another plot if we want to compare 2. I know there is subplot option but it will be of small size if I need to make a spatial map at to time intervals and compare. The detail of my matplotlib is below > > >%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% >I use Ubuntu 12.04 64 bit version >and > > >In [3]: matplotlib.get_backend() >Out[3]: 'WXAgg' > > >In [4]: matplotlib.__version__ >Out[4]: '1.2.0' > > >with best regards, >Sudheer >*************************************************************** >Sudheer Joseph >Indian National Centre for Ocean Information Services >Ministry of Earth Sciences, Govt. of India >POST BOX NO: 21, IDA Jeedeemetla P.O. >Via Pragathi Nagar,Kukatpally, Hyderabad; Pin:5000 55 >Tel:+91-40-23886047(O),Fax:+91-40-23895011(O), >Tel:+91-40-23044600(R),Tel:+91-40-9440832534(Mobile) >E-mail:sjo...@gm...;sud...@ya... >Web- http://oppamthadathil.tripod.com >*************************************************************** > > >________________________________ >. > >------------------------------------------------------------------------------ >Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester >Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the >endpoint security space. For insight on selecting the right partner to >tackle endpoint security challenges, access the full report. >http://p.sf.net/sfu/symantec-dev2dev >_______________________________________________ >Matplotlib-users mailing list >Mat...@li... >https://lists.sourceforge.net/lists/listinfo/matplotlib-users > >
I don't know of any reason why one shouldn't be able to use the wxAgg backend interactively. This looks like a bug to me. Would you mind adding this as an issue on the github issue tracker? Thanks, On 11 March 2013 19:06, Brendan Barnwell <bre...@br...> wrote: > I'm 64-bit Windows 7 with matplotlib 1.2.0 and WxPython 2.8.12.1. > I > was fiddling around with some of the different backends to see what > they look like and I found that the WxAgg backend doesn't work: > > Python 2.7.3 (default, Apr 10 2012, 23:24:47) [MSC v.1500 64 bit > (AMD64)] on win > 32 > Type "help", "copyright", "credits" or "license" for more information. > >>> import matplotlib as mpl > >>> mpl.use('WxAgg') > >>> from matplotlib import pyplot > >>> pyplot.ion() > >>> pyplot.plot([1, 2, 3]) > [<matplotlib.lines.Line2D object at 0x0000000006757DA0>] > >>> > > When I do the plot, the figure windows appears, but it's blank > (without even a proper blank background, just a white area) and > immediately shows "Not responding". I have to kill the window, and > doing so crashes the Python session. However, it works without the > "ion()" call: I can then call show() and see the plot fine. > > I have wxPython working fine in other apps. In fact, what's > especially odd is that I actually have an app that directly uses > FigureCanvasWxAgg to embed matplotlib graphs in a GUI, and this seems > to work fine. So it seems the problem is somehow in matplotlib's own > management of the interactive figure window. > > There was a previous question about a similar WxAgg issue on the > list > ( > > http://matplotlib.1069221.n5.nabble.com/trouble-with-show-not-drawing-in-interactive-mode-w-WxAgg-td39110.html > ), but there was no real answer: the poster just decided not to use > WxAgg. But aren't we really supposed to be able to use WxAgg > interactively? > > Thanks, > -- > Brendan Barnwell > "Do not follow where the path may lead. Go, instead, where there is > no path, and leave a trail." > --author unknown > > > ------------------------------------------------------------------------------ > Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > endpoint security space. For insight on selecting the right partner to > tackle endpoint security challenges, access the full report. > http://p.sf.net/sfu/symantec-dev2dev > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users >
Hi Mike, Do you have any code or an image to show the problem? Cheers, On 11 March 2013 20:44, Hearne, Mike <mh...@us...> wrote: > I have an issue with basemap.imshow() at higher latitudes - namely the > image (high-res topography, in this case) becomes distorted with > respect to the coastlines the higher I go. I assume it has to do > with the image pixels becoming more non-square the higher I go in > latitude. > > I found this discussion: > http://matplotlib.1069221.n5.nabble.com/Basemap-and-imshow-td14115.html > > where Jeff indicates that the user is using a non-rectangular map > projection. I'm thinking that is perhaps my problem (I'm using > Transverse Mercator), but I'm not sure which projections Basemap > supports that *are* rectangular. > > Or perhaps it's something else entirely. > > Any hints? > > Thanks, > > Mike Hearne > > > ------------------------------------------------------------------------------ > Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > endpoint security space. For insight on selecting the right partner to > tackle endpoint security challenges, access the full report. > http://p.sf.net/sfu/symantec-dev2dev > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users >
Hi Sudheer, Try the interactive mode ( http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.ion): >>> import matplotlib.pyplot as plt >>> plt.ion() >>> plt.plot(range(10)) [<matplotlib.lines.Line2D object at 0x1c565d0>] **a figure pops up here and hands you back the python command line** >>> Regards, On 12 March 2013 00:04, Sudheer Joseph <sud...@ya...> wrote: > Dear experts, > Is there a way to get back to the prompt after a plot is made and > displayed with out closing the plot? > The objective is to compare to plots or check some aspect about the plot > made from the loaded variables. This is the standard behavior of matlab > after plotting we get the prompt and we can make another plot if we want to > compare 2. I know there is subplot option but it will be of small size if I > need to make a spatial map at to time intervals and compare. The detail of > my matplotlib is below > > %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% > I use Ubuntu 12.04 64 bit version > and > > In [3]: matplotlib.get_backend() > Out[3]: 'WXAgg' > > In [4]: matplotlib.__version__ > Out[4]: '1.2.0' > > with best regards, > Sudheer > *************************************************************** > Sudheer Joseph > Indian National Centre for Ocean Information Services > Ministry of Earth Sciences, Govt. of India > POST BOX NO: 21, IDA Jeedeemetla P.O. > Via Pragathi Nagar,Kukatpally, Hyderabad; Pin:5000 55 > Tel:+91-40-23886047(O),Fax:+91-40-23895011(O), > Tel:+91-40-23044600(R),Tel:+91-40-9440832534(Mobile) > E-mail:sjo...@gm...;sud...@ya... > Web- http://oppamthadathil.tripod.com > *************************************************************** > ------------------------------ > *.* > > > > ------------------------------------------------------------------------------ > Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > endpoint security space. For insight on selecting the right partner to > tackle endpoint security challenges, access the full report. > http://p.sf.net/sfu/symantec-dev2dev > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > >
Dear experts, Is there a way to get back to the prompt after a plot is made and displayed with out closing the plot? The objective is to compare to plots or check some aspect about the plot made from the loaded variables. This is the standard behavior of matlab after plotting we get the prompt and we can make another plot if we want to compare 2. I know there is subplot option but it will be of small size if I need to make a spatial map at to time intervals and compare. The detail of my matplotlib is below %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% I use Ubuntu 12.04 64 bit version and In [3]: matplotlib.get_backend() Out[3]: 'WXAgg' In [4]: matplotlib.__version__ Out[4]: '1.2.0' with best regards, Sudheer *************************************************************** Sudheer Joseph Indian National Centre for Ocean Information Services Ministry of Earth Sciences, Govt. of India POST BOX NO: 21, IDA Jeedeemetla P.O. Via Pragathi Nagar,Kukatpally, Hyderabad; Pin:5000 55 Tel:+91-40-23886047(O),Fax:+91-40-23895011(O), Tel:+91-40-23044600(R),Tel:+91-40-9440832534(Mobile) E-mail:sjo...@gm...;sud...@ya... Web- http://oppamthadathil.tripod.com *************************************************************** ________________________________ .
Hi, everyone. I think I found a couple of bugs, but maybe someone knows something about this before I go filing a bug report. Matplotlib version: 1.1.1rc Bug 1: I'm using axis.twiny() to plot two data sets on top of each other using a shared y-axis. If the values are large, an exponent multiplier appears off to the right of the axis labels. The regular ticklabels for the second data set are correctly plotted on top of the figure. However, the exponent does not follow. Here is an example plot (code is attached): http://sd-work1.ece.vt.edu/offsettext.png Bug 2: In trying to come up with a work around for bug 1, I tried to use the axis.xaxis.get_offset_text().get_text() method to grab the text and then plot it else where. However, it returns an empty string when I try to assign it to a variable. It will do this until I change the state of the memory some how, such as creating another figure or dropping to the debugger. After that, produces the correct value. Please see the attached code, lines 24-33. Thanks for any help you may have, Nathaniel
On 3/11/2013 1:59 PM, Neal Becker wrote: > I go through a compute loop that takes maybe a few seconds per pass, then plot a new point on the graph. If you are willing to use TkAgg, see the TSPlot class here: https://econpy.googlecode.com/svn-history/r175/trunk/abm/gridworld/gridworld.py Alan Isaac
I have an issue with basemap.imshow() at higher latitudes - namely the image (high-res topography, in this case) becomes distorted with respect to the coastlines the higher I go. I assume it has to do with the image pixels becoming more non-square the higher I go in latitude. I found this discussion: http://matplotlib.1069221.n5.nabble.com/Basemap-and-imshow-td14115.html where Jeff indicates that the user is using a non-rectangular map projection. I'm thinking that is perhaps my problem (I'm using Transverse Mercator), but I'm not sure which projections Basemap supports that *are* rectangular. Or perhaps it's something else entirely. Any hints? Thanks, Mike Hearne
I'm 64-bit Windows 7 with matplotlib 1.2.0 and WxPython 2.8.12.1. I was fiddling around with some of the different backends to see what they look like and I found that the WxAgg backend doesn't work: Python 2.7.3 (default, Apr 10 2012, 23:24:47) [MSC v.1500 64 bit (AMD64)] on win 32 Type "help", "copyright", "credits" or "license" for more information. >>> import matplotlib as mpl >>> mpl.use('WxAgg') >>> from matplotlib import pyplot >>> pyplot.ion() >>> pyplot.plot([1, 2, 3]) [<matplotlib.lines.Line2D object at 0x0000000006757DA0>] >>> When I do the plot, the figure windows appears, but it's blank (without even a proper blank background, just a white area) and immediately shows "Not responding". I have to kill the window, and doing so crashes the Python session. However, it works without the "ion()" call: I can then call show() and see the plot fine. I have wxPython working fine in other apps. In fact, what's especially odd is that I actually have an app that directly uses FigureCanvasWxAgg to embed matplotlib graphs in a GUI, and this seems to work fine. So it seems the problem is somehow in matplotlib's own management of the interactive figure window. There was a previous question about a similar WxAgg issue on the list ( http://matplotlib.1069221.n5.nabble.com/trouble-with-show-not-drawing-in-interactive-mode-w-WxAgg-td39110.html ), but there was no real answer: the poster just decided not to use WxAgg. But aren't we really supposed to be able to use WxAgg interactively? Thanks, -- Brendan Barnwell "Do not follow where the path may lead. Go, instead, where there is no path, and leave a trail." --author unknown
Hi, Some time ago I tried to upgrade from an old version of mpl 0.99 to 1.0 but couldn't get it to work with py2exe and running on a Athlon PC. I finally got around to upgrade things and have another go at this. I am now on: Python 2.7 Numpy 1.6.1 /arch nosse mpl 1.2.0 I see a hard crash on the Athlon PC (i.e. no traceback and the MS Win error "App encountered a problem, do you want to report to MS". Trying to narrow it down I don't think it has to do with numpy as I use it elsewhere in the app together with wxPython/FloatCanvas without any issue and when I track where the crash is happening with print statements it happens on this line: print 'plot panel 1' # initialize matplotlib stuff self.figure = mpl.figure.Figure(figsize=(5, 4), dpi=75, facecolor='white', edgecolor='white') print 'plot panel 2' I still see the first print statement but not the second, my imports are as follows: import matplotlib as mpl mpl.use('WXAgg') from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as FigureCanvas I know I don't provide a lot of information (at least not yet), but has anyone come across some similar crash with py2exe and mpl when one creates a Figure? Any tips on how to further narrow this down or even better on what is needed to fix it are very welcome. Best regards Werner
I agree, I don't think that will work with mpl's animation stuff or at least I wouldn't want to do it that way. I've created GUIs that received data from a weather instrument in real-time. I did method 3 that I mentioned before because I knew the scientists using it were going to want more and more features. ...I FOUND A WAY FOR YOU TO CHEAT: You can use the Qt "processEvents()" method to have it process drawing/painting operation between the event loop iterations. This method is frowned upon when doing real Qt GUIs, but eh go for it. If you aren't doing anything more serious than watching the output of your processing as it goes then try this: import matplotlib matplotlib.use('qt4agg') import matplotlib as mpl import matplotlib.pyplot as plt plt.ion() import numpy as np from time import sleep from PyQt4 import QtGui,QtCore fig=plt.figure() plt.axis([0,1000,0,1]) i=0 x=list() y=list() while i <1000: temp_y=np.random.random() x.append(i) y.append(temp_y) plt.scatter(i,temp_y) i+=1 plt.draw() sleep(1) QtGui.qApp.processEvents() Good luck, Dave On 3/11/13 12:59 PM, Neal Becker wrote: > I go through a compute loop that takes maybe a few seconds per pass, > then plot a new point on the graph. Do I have to? No - I thought mpl > was supposed to do this and wanted to learn how. If it really doesn't > work I'll do something else. > > I don't think animation is correct here - I had the impression > animation is where my update would be run as a callback, with a main > loop that calls me periodically. Could that fit the model I > described, where a lengthy computation produces a new value every > few/10s of seconds? > > > On Mon, Mar 11, 2013 at 1:55 PM, David Hoese <dh...@gm... > <mailto:dh...@gm...>> wrote: > > Someone may have to correct me, but I think this has to do with > the Qt4 event loop and it not being run properly. When you get > into real time plotting it can get kind of tricky. In your case (I > got the same results). I have made real-time PyQt4 GUIs before and > have always used separate QThreads and Qt signals/slots to update > the plot. I've never used GTK so I'm not sure why that worked vs > Qt, I would think they would use similar principles but matplotlib > does some magic behind the scenes sometimes. You can see different > results if you comment out the while loop and import the module > into your python/ipython interpreter. After doing this you'll see > the figure pop up (you don't even need the fig.canvas.show() for > this part if interactive mode is on. I went one step further and > turned the while loop into a function: > > def one_iter(i): > # Contents of while loop > > Calling this in the interpreter shows the figure updating after > each call, but running in a loop (even with sleep) won't show any > updates until the loop is done. In my opinion you have a few > choices that really depend on your programming comfort level: > > 1. Don't make a real-time plot. > Do you really need a real-time plot that updates from some > external source? > 2. Maybe you should look at the matplotlib animation functionality > (http://matplotlib.org/api/animation_api.html). I like this > tutorial: > http://jakevdp.github.com/blog/2012/08/18/matplotlib-animation-tutorial/. > This won't get you a real-time GUI exactly, but it can help if > what you're doing isn't too complicated. It can also be nice for > making videos of plot animations. > 3. If you need a GUI with multiple plots and you need for future > feature creep, I would research making PyQt4 GUIs, QThreads, Qt > signals and slots, and putting matplotlib figures into a PyQt4 > GUI. This is complex if you are not familiar with GUI programming > and will take a while. > > Sorry I couldn't be of more help, but it really depends on what > exactly you are doing. Mainly, what do you mean by real-time? Do > you really mean animation? Let me know what you come up with, I'm > interested. > > -Dave > > P.S. Why use a while loop? You can do the same thing with: > > for i in range(1000): > # Do stuff > > > On 3/11/13 10:34 AM, Neal Becker wrote: >> I added fig.canvas.show(). It still does nothing. >> >> If I add >> mpl.use ('GTK'), now it seems to be doing realtime plotting. >> >> import matplotlib as mpl >> >> import matplotlib.pyplot as plt >> plt.ion() >> import numpy as np >> fig=plt.figure() >> plt.axis([0,1000,0,1]) >> >> i=0 >> x=list() >> y=list() >> >> fig.canvas.show() >> while i <1000: >> temp_y=np.random.random() >> x.append(i) >> y.append(temp_y) >> plt.scatter(i,temp_y) >> i+=1 >> plt.draw() >> >> >> >> On Mon, Mar 11, 2013 at 10:35 AM, David Hoese <dh...@gm... >> <mailto:dh...@gm...>> wrote: >> >> Oops forgot to change the subject line. >> >> On 3/11/13 9:34 AM, David Hoese wrote: >> >> You likely need to "show()" the canvas. I usually do this >> by calling "fig.canvas.show()" before the for loop. >> Since you are using a Qt4 backend the canvas used by the >> figure is a QWidget, the basic component of a Qt4 GUI. I >> don't know if there is a more matplotlib specific way of >> doing this, but when dealing with a larger system this is >> how I do it. >> >> I would also add a sleep ("from time import sleep") of a >> couple seconds for testing to make sure you are getting >> through the entire for loop before you can see it. >> >> Please CC in any replies, thanks. >> >> -Dave >> >> >> On 3/11/13 8:58 AM, ndb...@gm... >> <mailto:ndb...@gm...> wrote: >> >> I want to update a plot in real time. I did some >> goog search, and saw various >> answers. Trouble is, they aren't working. >> >> Here's a typical example: >> >> import matplotlib.pyplot as plt >> import numpy as np >> fig=plt.figure() >> plt.axis([0,1000,0,1]) >> >> i=0 >> x=list() >> y=list() >> >> while i <1000: >> temp_y=np.random.random() >> x.append(i) >> y.append(temp_y) >> plt.scatter(i,temp_y) >> i+=1 >> plt.draw() >> >> If I run this, it draws nothing. >> >> This is my matplotlibrc: >> backend : Qt4Agg >> mathtext.fontset: stix >> >> >> >> > >
I go through a compute loop that takes maybe a few seconds per pass, then plot a new point on the graph. Do I have to? No - I thought mpl was supposed to do this and wanted to learn how. If it really doesn't work I'll do something else. I don't think animation is correct here - I had the impression animation is where my update would be run as a callback, with a main loop that calls me periodically. Could that fit the model I described, where a lengthy computation produces a new value every few/10s of seconds? On Mon, Mar 11, 2013 at 1:55 PM, David Hoese <dh...@gm...> wrote: > Someone may have to correct me, but I think this has to do with the Qt4 > event loop and it not being run properly. When you get into real time > plotting it can get kind of tricky. In your case (I got the same results). > I have made real-time PyQt4 GUIs before and have always used separate > QThreads and Qt signals/slots to update the plot. I've never used GTK so > I'm not sure why that worked vs Qt, I would think they would use similar > principles but matplotlib does some magic behind the scenes sometimes. You > can see different results if you comment out the while loop and import the > module into your python/ipython interpreter. After doing this you'll see > the figure pop up (you don't even need the fig.canvas.show() for this part > if interactive mode is on. I went one step further and turned the while > loop into a function: > > def one_iter(i): > # Contents of while loop > > Calling this in the interpreter shows the figure updating after each call, > but running in a loop (even with sleep) won't show any updates until the > loop is done. In my opinion you have a few choices that really depend on > your programming comfort level: > > 1. Don't make a real-time plot. > Do you really need a real-time plot that updates from some > external source? > 2. Maybe you should look at the matplotlib animation functionality ( > http://matplotlib.org/api/animation_api.html). I like this tutorial: > http://jakevdp.github.com/blog/2012/08/18/matplotlib-animation-tutorial/. > This won't get you a real-time GUI exactly, but it can help if what you're > doing isn't too complicated. It can also be nice for making videos of plot > animations. > 3. If you need a GUI with multiple plots and you need for future feature > creep, I would research making PyQt4 GUIs, QThreads, Qt signals and slots, > and putting matplotlib figures into a PyQt4 GUI. This is complex if you are > not familiar with GUI programming and will take a while. > > Sorry I couldn't be of more help, but it really depends on what exactly > you are doing. Mainly, what do you mean by real-time? Do you really mean > animation? Let me know what you come up with, I'm interested. > > -Dave > > P.S. Why use a while loop? You can do the same thing with: > > for i in range(1000): > # Do stuff > > > On 3/11/13 10:34 AM, Neal Becker wrote: > > I added fig.canvas.show(). It still does nothing. > > If I add > mpl.use ('GTK'), now it seems to be doing realtime plotting. > > import matplotlib as mpl > > import matplotlib.pyplot as plt > plt.ion() > import numpy as np > fig=plt.figure() > plt.axis([0,1000,0,1]) > > i=0 > x=list() > y=list() > > fig.canvas.show() > while i <1000: > temp_y=np.random.random() > x.append(i) > y.append(temp_y) > plt.scatter(i,temp_y) > i+=1 > plt.draw() > > > > On Mon, Mar 11, 2013 at 10:35 AM, David Hoese <dh...@gm...> wrote: > >> Oops forgot to change the subject line. >> >> On 3/11/13 9:34 AM, David Hoese wrote: >> >>> You likely need to "show()" the canvas. I usually do this by calling >>> "fig.canvas.show()" before the for loop. >>> Since you are using a Qt4 backend the canvas used by the figure is a >>> QWidget, the basic component of a Qt4 GUI. I don't know if there is a more >>> matplotlib specific way of doing this, but when dealing with a larger >>> system this is how I do it. >>> >>> I would also add a sleep ("from time import sleep") of a couple seconds >>> for testing to make sure you are getting through the entire for loop before >>> you can see it. >>> >>> Please CC in any replies, thanks. >>> >>> -Dave >>> >>> >>> On 3/11/13 8:58 AM, ndb...@gm... wrote: >>> >>>> I want to update a plot in real time. I did some goog search, and saw >>>> various >>>> answers. Trouble is, they aren't working. >>>> >>>> Here's a typical example: >>>> >>>> import matplotlib.pyplot as plt >>>> import numpy as np >>>> fig=plt.figure() >>>> plt.axis([0,1000,0,1]) >>>> >>>> i=0 >>>> x=list() >>>> y=list() >>>> >>>> while i <1000: >>>> temp_y=np.random.random() >>>> x.append(i) >>>> y.append(temp_y) >>>> plt.scatter(i,temp_y) >>>> i+=1 >>>> plt.draw() >>>> >>>> If I run this, it draws nothing. >>>> >>>> This is my matplotlibrc: >>>> backend : Qt4Agg >>>> mathtext.fontset: stix >>>> >>> >>> >> > >
Someone may have to correct me, but I think this has to do with the Qt4 event loop and it not being run properly. When you get into real time plotting it can get kind of tricky. In your case (I got the same results). I have made real-time PyQt4 GUIs before and have always used separate QThreads and Qt signals/slots to update the plot. I've never used GTK so I'm not sure why that worked vs Qt, I would think they would use similar principles but matplotlib does some magic behind the scenes sometimes. You can see different results if you comment out the while loop and import the module into your python/ipython interpreter. After doing this you'll see the figure pop up (you don't even need the fig.canvas.show() for this part if interactive mode is on. I went one step further and turned the while loop into a function: def one_iter(i): # Contents of while loop Calling this in the interpreter shows the figure updating after each call, but running in a loop (even with sleep) won't show any updates until the loop is done. In my opinion you have a few choices that really depend on your programming comfort level: 1. Don't make a real-time plot. Do you really need a real-time plot that updates from some external source? 2. Maybe you should look at the matplotlib animation functionality (http://matplotlib.org/api/animation_api.html). I like this tutorial: http://jakevdp.github.com/blog/2012/08/18/matplotlib-animation-tutorial/. This won't get you a real-time GUI exactly, but it can help if what you're doing isn't too complicated. It can also be nice for making videos of plot animations. 3. If you need a GUI with multiple plots and you need for future feature creep, I would research making PyQt4 GUIs, QThreads, Qt signals and slots, and putting matplotlib figures into a PyQt4 GUI. This is complex if you are not familiar with GUI programming and will take a while. Sorry I couldn't be of more help, but it really depends on what exactly you are doing. Mainly, what do you mean by real-time? Do you really mean animation? Let me know what you come up with, I'm interested. -Dave P.S. Why use a while loop? You can do the same thing with: for i in range(1000): # Do stuff On 3/11/13 10:34 AM, Neal Becker wrote: > I added fig.canvas.show(). It still does nothing. > > If I add > mpl.use ('GTK'), now it seems to be doing realtime plotting. > > import matplotlib as mpl > > import matplotlib.pyplot as plt > plt.ion() > import numpy as np > fig=plt.figure() > plt.axis([0,1000,0,1]) > > i=0 > x=list() > y=list() > > fig.canvas.show() > while i <1000: > temp_y=np.random.random() > x.append(i) > y.append(temp_y) > plt.scatter(i,temp_y) > i+=1 > plt.draw() > > > > On Mon, Mar 11, 2013 at 10:35 AM, David Hoese <dh...@gm... > <mailto:dh...@gm...>> wrote: > > Oops forgot to change the subject line. > > On 3/11/13 9:34 AM, David Hoese wrote: > > You likely need to "show()" the canvas. I usually do this by > calling "fig.canvas.show()" before the for loop. > Since you are using a Qt4 backend the canvas used by the > figure is a QWidget, the basic component of a Qt4 GUI. I don't > know if there is a more matplotlib specific way of doing this, > but when dealing with a larger system this is how I do it. > > I would also add a sleep ("from time import sleep") of a > couple seconds for testing to make sure you are getting > through the entire for loop before you can see it. > > Please CC in any replies, thanks. > > -Dave > > > On 3/11/13 8:58 AM, ndb...@gm... > <mailto:ndb...@gm...> wrote: > > I want to update a plot in real time. I did some goog > search, and saw various > answers. Trouble is, they aren't working. > > Here's a typical example: > > import matplotlib.pyplot as plt > import numpy as np > fig=plt.figure() > plt.axis([0,1000,0,1]) > > i=0 > x=list() > y=list() > > while i <1000: > temp_y=np.random.random() > x.append(i) > y.append(temp_y) > plt.scatter(i,temp_y) > i+=1 > plt.draw() > > If I run this, it draws nothing. > > This is my matplotlibrc: > backend : Qt4Agg > mathtext.fontset: stix > > > >
Doesn't matter, still doesn't rescale without calling ax.axis On Mon, Mar 11, 2013 at 1:48 PM, Sterling Smith <sm...@fu...>wrote: > Neal, > > You might try > mpl.use('GTKAgg') > as I have seen problems with lone GTK. Also you might change this in your > .matplotlibrc file if possible. > > -Sterling > > On Mar 11, 2013, at 10:43AM, Neal Becker wrote: > > > According to other examples I see on the web, use of 'relim' and > > 'autoscale_view' should result in rescaling and drawing new axes. > Doesn't. > > Unless I explicity call > > ax.axis ([...]) > > I don't get any rescaling. > > > > Here's an example: > > > > import matplotlib as mpl > > mpl.use ('GTK') > > import matplotlib.pyplot as plt > > plt.ion() > > import numpy as np > > fig=plt.figure() > > ax = fig.add_subplot(111) > > x_values = [0] > > ax.axis ([0, 10, -1, 1]) > > y_values = [0] > > > > i=0 > > x=list() > > y=list() > > > > while i <1000: > > x.append (i) > > y.append (2*i) > > line, = plt.plot (x, y, 'x-') > > > > ## ax.axis ([min(x),max(x),min(y),max(y)]) > > > > ax.relim() > > # update ax.viewLim using the new dataLim > > ax.autoscale_view() > > plt.draw() > > i+=1 > > > > > > > > > ------------------------------------------------------------------------------ > > Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > > endpoint security space. For insight on selecting the right partner to > > tackle endpoint security challenges, access the full report. > > http://p.sf.net/sfu/symantec-dev2dev > > _______________________________________________ > > Matplotlib-users mailing list > > Mat...@li... > > https://lists.sourceforge.net/lists/listinfo/matplotlib-users > >
Neal, You might try mpl.use('GTKAgg') as I have seen problems with lone GTK. Also you might change this in your .matplotlibrc file if possible. -Sterling On Mar 11, 2013, at 10:43AM, Neal Becker wrote: > According to other examples I see on the web, use of 'relim' and > 'autoscale_view' should result in rescaling and drawing new axes. Doesn't. > Unless I explicity call > ax.axis ([...]) > I don't get any rescaling. > > Here's an example: > > import matplotlib as mpl > mpl.use ('GTK') > import matplotlib.pyplot as plt > plt.ion() > import numpy as np > fig=plt.figure() > ax = fig.add_subplot(111) > x_values = [0] > ax.axis ([0, 10, -1, 1]) > y_values = [0] > > i=0 > x=list() > y=list() > > while i <1000: > x.append (i) > y.append (2*i) > line, = plt.plot (x, y, 'x-') > > ## ax.axis ([min(x),max(x),min(y),max(y)]) > > ax.relim() > # update ax.viewLim using the new dataLim > ax.autoscale_view() > plt.draw() > i+=1 > > > > ------------------------------------------------------------------------------ > Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > endpoint security space. For insight on selecting the right partner to > tackle endpoint security challenges, access the full report. > http://p.sf.net/sfu/symantec-dev2dev > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users
According to other examples I see on the web, use of 'relim' and 'autoscale_view' should result in rescaling and drawing new axes. Doesn't. Unless I explicity call ax.axis ([...]) I don't get any rescaling. Here's an example: import matplotlib as mpl mpl.use ('GTK') import matplotlib.pyplot as plt plt.ion() import numpy as np fig=plt.figure() ax = fig.add_subplot(111) x_values = [0] ax.axis ([0, 10, -1, 1]) y_values = [0] i=0 x=list() y=list() while i <1000: x.append (i) y.append (2*i) line, = plt.plot (x, y, 'x-') ## ax.axis ([min(x),max(x),min(y),max(y)]) ax.relim() # update ax.viewLim using the new dataLim ax.autoscale_view() plt.draw() i+=1
I added fig.canvas.show(). It still does nothing. If I add mpl.use ('GTK'), now it seems to be doing realtime plotting. import matplotlib as mpl import matplotlib.pyplot as plt plt.ion() import numpy as np fig=plt.figure() plt.axis([0,1000,0,1]) i=0 x=list() y=list() fig.canvas.show() while i <1000: temp_y=np.random.random() x.append(i) y.append(temp_y) plt.scatter(i,temp_y) i+=1 plt.draw() On Mon, Mar 11, 2013 at 10:35 AM, David Hoese <dh...@gm...> wrote: > Oops forgot to change the subject line. > > On 3/11/13 9:34 AM, David Hoese wrote: > >> You likely need to "show()" the canvas. I usually do this by calling >> "fig.canvas.show()" before the for loop. >> Since you are using a Qt4 backend the canvas used by the figure is a >> QWidget, the basic component of a Qt4 GUI. I don't know if there is a more >> matplotlib specific way of doing this, but when dealing with a larger >> system this is how I do it. >> >> I would also add a sleep ("from time import sleep") of a couple seconds >> for testing to make sure you are getting through the entire for loop before >> you can see it. >> >> Please CC in any replies, thanks. >> >> -Dave >> >> >> On 3/11/13 8:58 AM, ndb...@gm... wrote: >> >>> I want to update a plot in real time. I did some goog search, and saw >>> various >>> answers. Trouble is, they aren't working. >>> >>> Here's a typical example: >>> >>> import matplotlib.pyplot as plt >>> import numpy as np >>> fig=plt.figure() >>> plt.axis([0,1000,0,1]) >>> >>> i=0 >>> x=list() >>> y=list() >>> >>> while i <1000: >>> temp_y=np.random.random() >>> x.append(i) >>> y.append(temp_y) >>> plt.scatter(i,temp_y) >>> i+=1 >>> plt.draw() >>> >>> If I run this, it draws nothing. >>> >>> This is my matplotlibrc: >>> backend : Qt4Agg >>> mathtext.fontset: stix >>> >> >> >
Oops forgot to change the subject line. On 3/11/13 9:34 AM, David Hoese wrote: > You likely need to "show()" the canvas. I usually do this by calling > "fig.canvas.show()" before the for loop. > Since you are using a Qt4 backend the canvas used by the figure is a > QWidget, the basic component of a Qt4 GUI. I don't know if there is a > more matplotlib specific way of doing this, but when dealing with a > larger system this is how I do it. > > I would also add a sleep ("from time import sleep") of a couple > seconds for testing to make sure you are getting through the entire > for loop before you can see it. > > Please CC in any replies, thanks. > > -Dave > > On 3/11/13 8:58 AM, ndb...@gm... wrote: >> I want to update a plot in real time. I did some goog search, and >> saw various >> answers. Trouble is, they aren't working. >> >> Here's a typical example: >> >> import matplotlib.pyplot as plt >> import numpy as np >> fig=plt.figure() >> plt.axis([0,1000,0,1]) >> >> i=0 >> x=list() >> y=list() >> >> while i <1000: >> temp_y=np.random.random() >> x.append(i) >> y.append(temp_y) >> plt.scatter(i,temp_y) >> i+=1 >> plt.draw() >> >> If I run this, it draws nothing. >> >> This is my matplotlibrc: >> backend : Qt4Agg >> mathtext.fontset: stix >
You likely need to "show()" the canvas. I usually do this by calling "fig.canvas.show()" before the for loop. Since you are using a Qt4 backend the canvas used by the figure is a QWidget, the basic component of a Qt4 GUI. I don't know if there is a more matplotlib specific way of doing this, but when dealing with a larger system this is how I do it. I would also add a sleep ("from time import sleep") of a couple seconds for testing to make sure you are getting through the entire for loop before you can see it. Please CC in any replies, thanks. -Dave On 3/11/13 8:58 AM, ndb...@gm... wrote: > I want to update a plot in real time. I did some goog search, and saw various > answers. Trouble is, they aren't working. > > Here's a typical example: > > import matplotlib.pyplot as plt > import numpy as np > fig=plt.figure() > plt.axis([0,1000,0,1]) > > i=0 > x=list() > y=list() > > while i <1000: > temp_y=np.random.random() > x.append(i) > y.append(temp_y) > plt.scatter(i,temp_y) > i+=1 > plt.draw() > > If I run this, it draws nothing. > > This is my matplotlibrc: > backend : Qt4Agg > mathtext.fontset: stix
mpl is 1.2.0 Fedora linux On Mon, Mar 11, 2013 at 9:57 AM, Neal Becker <ndb...@gm...> wrote: > Tried with/and without plt.ion(), no difference. Nothing is drawn. When > I kill it with C-c, briefly a window is flashed. > > import matplotlib as mpl > > import matplotlib.pyplot as plt > plt.ion() > import numpy as np > fig=plt.figure() > plt.axis([0,1000,0,1]) > > i=0 > x=list() > y=list() > > while i <1000: > temp_y=np.random.random() > x.append(i) > y.append(temp_y) > plt.scatter(i,temp_y) > i+=1 > plt.draw() > > > > On Mon, Mar 11, 2013 at 9:55 AM, Francesco Montesano < > fra...@gm...> wrote: > >> Dear Neal, >> >> 2013年3月11日 Neal Becker <ndb...@gm...> >> >>> I want to update a plot in real time. I did some goog search, and saw >>> various >>> answers. Trouble is, they aren't working. >>> >>> Here's a typical example: >>> >>> import matplotlib.pyplot as plt >>> import numpy as np >>> fig=plt.figure() >>> plt.axis([0,1000,0,1]) >>> >>> i=0 >>> x=list() >>> y=list() >>> >>> while i <1000: >>> temp_y=np.random.random() >>> x.append(i) >>> y.append(temp_y) >>> plt.scatter(i,temp_y) >>> i+=1 >>> plt.draw() >>> >>> If I run this, it draws nothing. >>> >>> This is my matplotlibrc: >>> backend : Qt4Agg >>> mathtext.fontset: stix >>> >> >> do you use interactive mode? (plt.ion() before creating the figure) >> Francesco >> >> >> >>> >> >> >>> >>> >>> ------------------------------------------------------------------------------ >>> Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester >>> Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the >>> endpoint security space. For insight on selecting the right partner to >>> tackle endpoint security challenges, access the full report. >>> http://p.sf.net/sfu/symantec-dev2dev >>> _______________________________________________ >>> Matplotlib-users mailing list >>> Mat...@li... >>> https://lists.sourceforge.net/lists/listinfo/matplotlib-users >>> >> >> >
Tried with/and without plt.ion(), no difference. Nothing is drawn. When I kill it with C-c, briefly a window is flashed. import matplotlib as mpl import matplotlib.pyplot as plt plt.ion() import numpy as np fig=plt.figure() plt.axis([0,1000,0,1]) i=0 x=list() y=list() while i <1000: temp_y=np.random.random() x.append(i) y.append(temp_y) plt.scatter(i,temp_y) i+=1 plt.draw() On Mon, Mar 11, 2013 at 9:55 AM, Francesco Montesano < fra...@gm...> wrote: > Dear Neal, > > 2013年3月11日 Neal Becker <ndb...@gm...> > >> I want to update a plot in real time. I did some goog search, and saw >> various >> answers. Trouble is, they aren't working. >> >> Here's a typical example: >> >> import matplotlib.pyplot as plt >> import numpy as np >> fig=plt.figure() >> plt.axis([0,1000,0,1]) >> >> i=0 >> x=list() >> y=list() >> >> while i <1000: >> temp_y=np.random.random() >> x.append(i) >> y.append(temp_y) >> plt.scatter(i,temp_y) >> i+=1 >> plt.draw() >> >> If I run this, it draws nothing. >> >> This is my matplotlibrc: >> backend : Qt4Agg >> mathtext.fontset: stix >> > > do you use interactive mode? (plt.ion() before creating the figure) > Francesco > > > >> > > >> >> >> ------------------------------------------------------------------------------ >> Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester >> Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the >> endpoint security space. For insight on selecting the right partner to >> tackle endpoint security challenges, access the full report. >> http://p.sf.net/sfu/symantec-dev2dev >> _______________________________________________ >> Matplotlib-users mailing list >> Mat...@li... >> https://lists.sourceforge.net/lists/listinfo/matplotlib-users >> > >
Dear Neal, 2013年3月11日 Neal Becker <ndb...@gm...> > I want to update a plot in real time. I did some goog search, and saw > various > answers. Trouble is, they aren't working. > > Here's a typical example: > > import matplotlib.pyplot as plt > import numpy as np > fig=plt.figure() > plt.axis([0,1000,0,1]) > > i=0 > x=list() > y=list() > > while i <1000: > temp_y=np.random.random() > x.append(i) > y.append(temp_y) > plt.scatter(i,temp_y) > i+=1 > plt.draw() > > If I run this, it draws nothing. > > This is my matplotlibrc: > backend : Qt4Agg > mathtext.fontset: stix > do you use interactive mode? (plt.ion() before creating the figure) Francesco > > > > ------------------------------------------------------------------------------ > Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > endpoint security space. For insight on selecting the right partner to > tackle endpoint security challenges, access the full report. > http://p.sf.net/sfu/symantec-dev2dev > _______________________________________________ > Matplotlib-users mailing list > Mat...@li... > https://lists.sourceforge.net/lists/listinfo/matplotlib-users >