Re: [Matplotlib-users] can't import pylab
John Seales praxbaf...@hotmail.com writes: Anyone have any help to get pylab working? Should I reinstall? What method should I use? I guess you missed my previous reply asking for more details (I changed the subject so that people who know more about OS X might notice it): http://thread.gmane.org/gmane.comp.python.numeric.general/29635/focus=17135 -- Jouni K. Seppänen http://www.iki.fi/jks -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] 3rd y-axis in plot
Hello, I need to plot 3 functions into the same plot, each having different scales (same x, different y values). For the first 2 functions I can use twinx(). But how can I include a 3rd axis, which should appear beside the first y-axis and plot the 3rd function ? Thanks for matplotlib help Paul -- View this message in context: http://www.nabble.com/3rd-y-axis-in-plot-tp23174438p23174438.html Sent from the matplotlib - users mailing list archive at Nabble.com. -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] SpanSelector on multiple figures
Hi, I'm wondering if it is possible to use SpanSelector on multiple figures : my problem is that I can't think of a way to tell the onselect on which axes(ses) of which figure it should try and do something. The example works because there is only one SpanSelector active and it therefore knows which axes it should redraw. For it to work on multiple figures (say I have a series of events that I plot in a similar way each in a separate figure and I would like a SpanSelector feature on each of the figures) I would need to have a reference to which axes called the onselect through SpanSelector : then I could get the axes's figure and manipulate the other subplots on that figure accordingly. Is there a way of doing this ? Kind regards, Frederic -- View this message in context: http://www.nabble.com/SpanSelector-on-multiple-figures-tp23139774p23139774.html Sent from the matplotlib - users mailing list archive at Nabble.com. -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] Hardcoded DPI settings in PDF and Cairo backends
Hi, I'm currently doing my diploma thesis with matplotlib plots and I have a problem there. Many of the plots include an imshow(), which is completly blurred when I do a savefig() to PDF. The problem seems to be the hardcoded DPI settings in the PDF and Cairo backends (dpi=72), which is far too low for a printing quality image. When looking for the source of this setting, I found http://matplotlib.svn.sourceforge.net/viewvc/matplotlib?view=revrevision=4933 which does not make any sense to me. Why was the kwargs readout disabled, even if the default setting was already 72dpi? If I explicitely do a savefig(file, dpi=XX), it could be assumed that I REALLY WANT a DPI setting of XX. And if I don't supply any dpi parameter, the default of 72 will be used. Best regards, David signature.asc Description: OpenPGP digital signature -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] Animation with copy_from_bbox / restore_region.
Hi, I'm trying to use matplotlib for animating data as it is received from an online source (online in the algorithmic sense not internet:). I'd like the graph plot to be updated with high frequency since the data changes rapidly. I've used the BufferRegion with copy_from_bbox / restore_region and it speeds up the plotting considerably but alas it's still not good enough (with a large number of graphs and a large number of data points in each graph). What I'd like to do is to utilize the fact that the animation is updated in a predictable fashion (i.e., scrolling off the screen to the left as new data arrives) in order to speed up the animation. The idea would be to copy the right 99% of the graph (or some other fraction) via some kind of function similar to copy_from_bbox, move it 1% to the left and then plot the new 1% of the data. The problem is that as far as I can tell the copy_from_bbox/restore_region does not actually allow changing the area in which it is restored. I've mucked around in the source files a bit but to no avail. My question is then: 1. Is there some other way to copy everything enclosed in a Bbox? or 2. Is there some way to modify the region in which data reappears when using restore_region? 3. Perhaps I'm missing something? I'm sure someone else has done this since it seems pretty natural and useful for a variety of applications. Elan If stupidity got us into this mess, why can't it get us out? - Will Rogers -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] SpanSelector on multiple figures
Hi, I'm wondering if it is possible to use SpanSelector on multiple figures : my problem is that I can't think of a way to tell the onselect on which axes(ses) of which figure it should try and do something. The example works because there is only one SpanSelector active and it therefore knows which axes it should redraw. For it to work on multiple figures (say I have a series of events that I plot in a similar way each in a separate figure and I would like a SpanSelector feature on each of the figures) I would need to have a reference to which axes called the onselect through SpanSelector : then I could get the axes's figure and manipulate the other subplots on that figure accordingly. Is there a way of doing this ? Kind regards, Frederic -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] Matplotlib running under cron
I have been successfully producing graphics as pngs with matplotlib and running them as cron jobs with Linux for some time. These graphics used standard colors. I recently changed some of the colours, using tuples of RGB values instead of the standard colors and now the scripts will run from the command line, but not as scheduled cron jobs and I get the following error: Unable to access the X Display, is $DISPLAY set properly? The script then terminates. Can anyone help me with how to set the display in cron and run Matplotlib as a cron job. Thanks John -- View this message in context: http://www.nabble.com/Matplotlib-running-under-cron-tp23194748p23194748.html Sent from the matplotlib - users mailing list archive at Nabble.com. -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] Matplotlib running under cron
I have been successfully producing graphics as pngs with matplotlib and running them as cron jobs with Linux for some time. These graphics used standard colors. I recently changed some of the colours, using tuples of RGB values instead of the standard colors and now the scripts will run from the command line, but not as scheduled cron jobs and I get the following error: Unable to access the X Display, is $DISPLAY set properly? The script then terminates. Can anyone help me with how to set the display in cron and run Matplotlib as a cron job. Thanks John -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] set fixed xrange
Hi there, I'm using matplotlib (version 0.98.5.2) to generate a couple of bar- charts for a website. Until now I've not been able to find a way set the x axis to a fixed range. Suppose my data is turnover per hour. Now: If there is zero turnover at the beginning or the end of a period matplotlib omits that value and limits the xrange so that non-zero hours reside on the edges which would be confusing for the users. This is the code: import matplotlib matplotlib.use('Agg') import matplotlib.pyplot as plt fig = plt.figure(figsize=(5,4),dpi=72) ax = fig.add_subplot(111) ax.set_ylabel('EUR') ax.set_xlabel('Hour') ax.set_xlim((1,24)) ax.bar(data.keys(),data.values(),width=1,align='center') fig.savefig(filename) I searched the docs but I didn't find anything that could fix my problem. It would be great if anybody knew (and told me) what I am doing wrong. Thanks in advance Till Backhaus -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Matplotlib running under cron
john.ba...@worstead.co.uk writes: I recently changed some of the colours, using tuples of RGB values instead of the standard colors and now the scripts will run from the command line, but not as scheduled cron jobs and I get the following error: Unable to access the X Display, is $DISPLAY set properly? This has probably nothing to do with the way you specify colors. For some reason matplotlib is using an interactive backend. Make sure that your script starts with import matplotlib matplotlib.use('Agg') or that you specify the Agg backend in your matplotlibrc file. -- Jouni K. Seppänen http://www.iki.fi/jks -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Hardcoded DPI settings in PDF and Cairo backends
David Kiliani m...@davidkiliani.de writes: http://matplotlib.svn.sourceforge.net/viewvc/matplotlib?view=revrevision=4933 which does not make any sense to me. Why was the kwargs readout disabled, even if the default setting was already 72dpi? Before that change, the dpi setting changed the size of the pages produced by the pdf backend, not the resolution. But since revision 6645 (release version 0.98.5.2) the dpi argument should set the resolution of images again. (I think this used to work before the Great Transform Refactoring, so in versions on the 0.91 branch it should work, too.) -- Jouni K. Seppänen http://www.iki.fi/jks -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] set fixed xrange
On Thu, Apr 23, 2009 at 8:40 AM, Till Backhaus t...@backha.us wrote: Hi there, I'm using matplotlib (version 0.98.5.2) to generate a couple of bar- charts for a website. Until now I've not been able to find a way set the x axis to a fixed range. Suppose my data is turnover per hour. Now: If there is zero turnover at the beginning or the end of a period matplotlib omits that value and limits the xrange so that non-zero hours reside on the edges which would be confusing for the users. This is the code: import matplotlib matplotlib.use('Agg') import matplotlib.pyplot as plt fig = plt.figure(figsize=(5,4),dpi=72) ax = fig.add_subplot(111) ax.set_ylabel('EUR') ax.set_xlabel('Hour') ax.set_xlim((1,24)) ax.bar(data.keys(),data.values(),width=1,align='center') fig.savefig(filename) Try moving the call to ax.set_xlim to *after* the call to ax.bar. Ryan -- Ryan May Graduate Research Assistant School of Meteorology University of Oklahoma Sent from Norman, Oklahoma, United States -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] SpanSelector on multiple figures
On Mon, Apr 20, 2009 at 4:09 PM, fjldurodie frederic.duro...@googlemail.com wrote: Hi, I'm wondering if it is possible to use SpanSelector on multiple figures : my problem is that I can't think of a way to tell the onselect on which axes(ses) of which figure it should try and do something. The example works because there is only one SpanSelector active and it therefore knows which axes it should redraw. For it to work on multiple figures (say I have a series of events that I plot in a similar way each in a separate figure and I would like a SpanSelector feature on each of the figures) I would need to have a reference to which axes called the onselect through SpanSelector : then I could get the axes's figure and manipulate the other subplots on that figure accordingly. Mouse event in mpl has a inaxes property. However, SpanSelector hide event information from users. On the other hand, the first argument of the SpanSelector is the axes that you want to use. So, I'm not sure what your point is. You already know the axes you're working with. Can't you just use different callbacks for different axes? -JJ Is there a way of doing this ? Kind regards, Frederic -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] pylab quick reference? (
Selam to you too Gökhan, Gökhan SEVER wrote: What I recommend you is: watching John Hunter's video at Matplotlib by John D. Hunter http://videolectures.net/mloss08_hunter_mat/. His introduction of matplotlib and examples he use could be very interesting to watch for you. I just started to check out the video, looks interesting and useful, thanks for the link. Also you can take a look at this book: Beginning Python Visualization: Crafting Visual Transformation Scripts I had not heard of this book before, I'll look for more information on it. Good luck on your plotting adventures. Thanks - it's fun to learn new things. Cheers, Esmail -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] pylab quick reference? (
There is no quick reference, though one would be handy. If you scroll down to the bottom of the main page at http://matplotlib.sourceforge.net/index.html there is a summary of the pyplot plotting commands with links to the full docs. You can at least see most everything that is available in pyplot in one place. JDH ah .. nice, thanks! Esmail -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Animation with copy_from_bbox / restore_region.
On Mon, Apr 20, 2009 at 4:34 PM, Elan Pavlov e...@mit.edu wrote: Hi, I'm trying to use matplotlib for animating data as it is received from an online source (online in the algorithmic sense not internet:). I'd like the graph plot to be updated with high frequency since the data changes rapidly. I've used the BufferRegion with copy_from_bbox / restore_region and it speeds up the plotting considerably but alas it's still not good enough (with a large number of graphs and a large number of data points in each graph). Well, if you need your plot updated with very high frequency, MPL may not be your tool of choice. Anyhow, my first recommendation is not to update the plot frequently. I mean, do you have to update the plot for every changes? Can you update it every 10th change, for example? What I'd like to do is to utilize the fact that the animation is updated in a predictable fashion (i.e., scrolling off the screen to the left as new data arrives) in order to speed up the animation. The idea would be to copy the right 99% of the graph (or some other fraction) via some kind of function similar to copy_from_bbox, move it 1% to the left and then plot the new 1% of the data. The problem is that as far as I can tell the copy_from_bbox/restore_region does not actually allow changing the area in which it is restored. I've mucked around in the source files a bit but to no avail. My question is then: 1. Is there some other way to copy everything enclosed in a Bbox? or 2. Is there some way to modify the region in which data reappears when using restore_region? 3. Perhaps I'm missing something? I'm sure someone else has done this since it seems pretty natural and useful for a variety of applications. I'm attaching a patch that might do what you want to do. It implements a restore_bbox2 method which restores a subset of the saved background at a specified position. A small example is also attached (it is based on the gtk backend). I, personally, am not sure if this kind of feature is useful. If you shift part of your figure, you have to be careful not to mess up with the coordinate system. And also be careful about what to be shifted and what to be not (e.g., ticks). If others find this useful, I'll commit this to the trunk with some api improvement. Regards, -JJ Elan If stupidity got us into this mess, why can't it get us out? - Will Rogers -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users Index: src/_backend_agg.cpp === --- src/_backend_agg.cpp (revision 7061) +++ src/_backend_agg.cpp (working copy) @@ -104,6 +104,18 @@ return Py::Object(); } +Py::Object BufferRegion::get_bounds(const Py::Tuple args) { +args.verify_length(0); + +Py::Tuple bounds(4); +bounds[0] = Py::Int(rect.x1); +bounds[1] = Py::Int(rect.y1); +bounds[2] = Py::Int(rect.x2); +bounds[3] = Py::Int(rect.y2); + +return bounds; +} + Py::Object BufferRegion::to_string_argb(const Py::Tuple args) { // owned=true to prevent memory leak Py_ssize_t length; @@ -426,6 +438,54 @@ return Py::Object(); } +Py::Object +RendererAgg::restore_region2(const Py::Tuple args) { + //copy BufferRegion to buffer + args.verify_length(7); + + + + int x(0),y(0), xx1(0),yy1(0), xx2(0), yy2(0); + try { +xx1 = Py::Int( args[1] ); +yy1 = Py::Int( args[2] ); +xx2 = Py::Int( args[3] ); +yy2 = Py::Int( args[4] ); +x = Py::Int( args[5] ); +y = Py::Int( args[6] ); + } + catch (Py::TypeError) { +throw Py::TypeError(Invalid input arguments to draw_text_image); + } + + + BufferRegion* region = static_castBufferRegion*(args[0].ptr()); + + if (region-data==NULL) +throw Py::ValueError(Cannot restore_region from NULL data); +//return Py::Object(); + + //std::cout restoring region-width region-height region-stride region-rect.x1 region-rect.y1 std::endl; + + //agg::rect_i rect((int)l, height - (int)t, (int)r, height - (int)b); + //agg::rect_i rect(xx1-region-rect.x1, height - (yy2-region-rect.y1), + //xx2-region-rect.x1, height - (yy1-region-rect.y1)); + agg::rect_i rect(xx1-region-rect.x1, (yy1-region-rect.y1), + xx2-region-rect.x1, (yy2-region-rect.y1)); + + + agg::rendering_buffer rbuf; + rbuf.attach(region-data, + region-width, + region-height, + region-stride); + + //rendererBase.copy_from(rbuf, 0, region-rect.x1,
Re: [Matplotlib-users] 3rd y-axis in plot
On Thu, Apr 23, 2009 at 3:54 AM, philscher p.hilsc...@lsw.uni-heidelberg.de wrote: Hello, I need to plot 3 functions into the same plot, each having different scales (same x, different y values). For the first 2 functions I can use twinx(). But how can I include a 3rd axis, which should appear beside the first y-axis and plot the 3rd function ? Is this close to what you want? http://dl.getdropbox.com/u/178748/AxesGrid/htdocs/_images/demo_parasite_axes2.png If yes, you may take a look at http://dl.getdropbox.com/u/178748/AxesGrid/htdocs/users/overview.html#axisline However, it may not work correctly unless you're using the svn version of the mpl. -JJ Thanks for matplotlib help Paul -- View this message in context: http://www.nabble.com/3rd-y-axis-in-plot-tp23174438p23174438.html Sent from the matplotlib - users mailing list archive at Nabble.com. -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] pylab quick reference? (
Esmail wrote: Selam to you too Gökhan, Gökhan SEVER wrote: What I recommend you is: watching John Hunter's video at Matplotlib by John D. Hunter http://videolectures.net/mloss08_hunter_mat/. His introduction of matplotlib and examples he use could be very interesting to watch for you. I just started to check out the video, looks interesting and useful, thanks for the link. I have tried twice to watch this video and each time, after a lengthy delay, a server not found ... message appears after I click on the play button. This happens in both Firefox 3 and IE7 on my MS Windows XP Pro machine. Also you can take a look at this book: Beginning Python Visualization: Crafting Visual Transformation Scripts I had not heard of this book before, I'll look for more information on it. Good luck on your plotting adventures. Thanks - it's fun to learn new things. Cheers, Esmail -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] pylab quick reference? (
Jim Vickroy wrote: I have tried twice to watch this video and each time, after a lengthy delay, a server not found ... message appears after I click on the play button. This happens in both Firefox 3 and IE7 on my MS Windows XP Pro machine. Works here with XP Prof SP2 and Firefox 3.0.9 ... odd. Esmail -- Crystal Reports #45; New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty#45;free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] pylab quick reference? (
Works here. Don't know it's a browser issue or something related to your connection. Best to wait a reply from John Hunter. He might have it uploaded somewhere else. And yes developers knows a lot about their product then users. Wish there were more handy instructional videos -showing step-by-step what is on throughout the program. I know I am asking too much :) Gökhan On Thu, Apr 23, 2009 at 12:40 PM, Jim Vickroy jim.vick...@noaa.gov wrote: Esmail wrote: Selam to you too Gökhan, Gökhan SEVER wrote: What I recommend you is: watching John Hunter's video at Matplotlib by John D. Hunter http://videolectures.net/mloss08_hunter_mat/ http://videolectures.net/mloss08_hunter_mat/. His introduction of matplotlib and examples he use could be very interesting to watch for you. I just started to check out the video, looks interesting and useful, thanks for the link. I have tried twice to watch this video and each time, after a lengthy delay, a server not found ... message appears after I click on the play button. This happens in both Firefox 3 and IE7 on my MS Windows XP Pro machine. Also you can take a look at this book: Beginning Python Visualization: Crafting Visual Transformation Scripts I had not heard of this book before, I'll look for more information on it. Good luck on your plotting adventures. Thanks - it's fun to learn new things. Cheers, Esmail -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing listmatplotlib-us...@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Crystal Reports #45; New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty#45;free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] 2 simple ??: program exit w/graph, update graph real-time
Hi, I have two quick questions: 1. Is it possible to exit a Python program but still have the graph window generated by pylot remain visible? Right now the program stops when I display the (only) final graph. When I close this window, the program exits. I would like to finish the program, but have the graph stay visible if that's possible (I suppose I could save a graphics file and then display it - but that's a bit different) 2. Is it possible to update graphs somewhat efficiently during the runtime of the program? Say I have a loop that generates value to be plotted. Right now I collect them and plot them at the end, ie values = [] for i in range(0, 200): values.append(i) various pyplot commands to plot the values list. I wonder if I could have the graph update during each iteration instead giving me an up-to-date view of the data. (The above is a super simplified example of course) Thanks, Esmail -- Crystal Reports #45; New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty#45;free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] savefig bug
It works great now - thanks for fixing this! Thomas On Apr 23, 2009, at 10:29 AM, Michael Droettboom wrote: I think Jae-Joon's assesment is correct, since the logical dpi in PS is hardcoded to 72.0. I have made this change in the SVN repository. Mike Thomas Robitaille wrote: Thanks for your quick reply! I'll be patient and wait for the fix to be made in the SVN repository, rather than trying to patch it myself. Do I need to add any information to the bug report? Best, Thomas On Apr 21, 2009, at 1:06 PM, Jae-Joon Lee wrote: I can reproduce this bug with the current svn. It works correctly If you set dpi=72, but it seems that it would not be an option in your case. It seems to me that this is related with the change in r6847 that Michael made. http://matplotlib.svn.sourceforge.net/viewvc/matplotlib/trunk/matplotlib/lib/matplotlib/backends/backend_ps.py?r1=6734r2=6847 At line 431 of the backend_ps.py, clip = (0.0, 0.0, self.width * self.imagedpi, self.height * self.imagedpi) I think we should use the dpi of the figure, instead of the imagedpi of the renderer. Replacing self.imagedpi with 72 (which is the dpi of the figure when ps backend is used) seems to solve the problem. Thomas, I don't see any easy workaround for this bug other than patching the code. Others may have better insight though. Regards, -JJ On Tue, Apr 21, 2009 at 9:59 AM, Thomas Robitaille thomas.robitai...@gmail.com wrote: Hi, I've come across a bug with the savefig method when using the dpi= argument and saving an EPS file. If you try the following code, you will see that the frame is incomplete. Is there a way to solve this from a user point of view? --- import matplotlib matplotlib.use('Agg') from matplotlib.pyplot import * import numpy as np nx,ny = 10,10 image = np.random.random((nx,ny)) fig = figure(figsize=(4,4)) ax = fig.add_subplot(111) ax.imshow(image,interpolation='nearest') fig.savefig('plot.eps',dpi=30) --- I've submitted a bug report: https://sourceforge.net/tracker/?func=detailaid=2777476group_id=80706atid=560720 Thanks, Thomas -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Michael Droettboom Science Software Branch Operations and Engineering Division Space Telescope Science Institute Operated by AURA for NASA -- Crystal Reports #45; New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty#45;free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Animation with copy_from_bbox / restore_region.
Hi Jae-Joon, Thanks a ton! The problem is actually not the frequency of changes. The current method uses draw_artist on each update. However, the time for draw_artist is linear in the *number* of points so for graphs with a large amount of data it is extremely inefficient. Your patch means that update time is linear in the amount of data *updated* and not in the total amount of data. As for the ticks you have a point. In my application I actually want ticks to be shifted (as time goes on) so indeed this is what I want. In general ticks that are shifted out can be redrawn using set_data methods which are efficient since a tick can be defined as it's endpoints. Basically when first calling plot() I set all of the tick locators to Null and then just add ticks as a line (with two points) based on the desired spacing. Changing a tick location (or if desired redrawing it in the same location) is basically a call to set_(x|y)data and then draw_artist for a line with two points (or a line collection will *slightly* improve performance if needed). Anyway, thanks again. I'll play around with it and let you know what I run into. Elan --- I can no other answer make but thanks, And thanks, and ever thanks. -- William Shakespeare On Thu, Apr 23, 2009 at 1:21 PM, Jae-Joon Lee lee.j.j...@gmail.com wrote: On Mon, Apr 20, 2009 at 4:34 PM, Elan Pavlov e...@mit.edu wrote: Hi, I'm trying to use matplotlib for animating data as it is received from an online source (online in the algorithmic sense not internet:). I'd like the graph plot to be updated with high frequency since the data changes rapidly. I've used the BufferRegion with copy_from_bbox / restore_region and it speeds up the plotting considerably but alas it's still not good enough (with a large number of graphs and a large number of data points in each graph). Well, if you need your plot updated with very high frequency, MPL may not be your tool of choice. Anyhow, my first recommendation is not to update the plot frequently. I mean, do you have to update the plot for every changes? Can you update it every 10th change, for example? What I'd like to do is to utilize the fact that the animation is updated in a predictable fashion (i.e., scrolling off the screen to the left as new data arrives) in order to speed up the animation. The idea would be to copy the right 99% of the graph (or some other fraction) via some kind of function similar to copy_from_bbox, move it 1% to the left and then plot the new 1% of the data. The problem is that as far as I can tell the copy_from_bbox/restore_region does not actually allow changing the area in which it is restored. I've mucked around in the source files a bit but to no avail. My question is then: 1. Is there some other way to copy everything enclosed in a Bbox? or 2. Is there some way to modify the region in which data reappears when using restore_region? 3. Perhaps I'm missing something? I'm sure someone else has done this since it seems pretty natural and useful for a variety of applications. I'm attaching a patch that might do what you want to do. It implements a restore_bbox2 method which restores a subset of the saved background at a specified position. A small example is also attached (it is based on the gtk backend). I, personally, am not sure if this kind of feature is useful. If you shift part of your figure, you have to be careful not to mess up with the coordinate system. And also be careful about what to be shifted and what to be not (e.g., ticks). If others find this useful, I'll commit this to the trunk with some api improvement. Regards, -JJ Elan If stupidity got us into this mess, why can't it get us out? - Will Rogers -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- If I knew that a man was coming to my house with the conscious design of doing me good, I should
[Matplotlib-users] How to maximaze a Tkinter window
Hi, I would like to maximize a window that is generated by pyplot. Example code: import numpy as np import matplotlib.pyplot as plt t = np.arange(0., 5., 0.2) line, = plt.plot(t, t**2, 'bo') plt.show() I found code on how to do this in Tkinter mailing: def maximize_toplevel( widget ): toplevel = root.winfo_toplevel() try: # On MS Windows one can set the zoomed state. toplevel.wm_state( 'zoomed' ) except: w = root.winfo_screenwidth() h = root.winfo_screenheight() - 60 geom_string = %dx%d+0+0 % (w,h) toplevel.wm_geometry( geom_string ) return But I have no clue how to apply this in the pyplot environment. In other words, how do I get from the plt.show() call to something that can be passed to the maximize_toplevel function? Thanks for any hint UV -- Crystal Reports #45; New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty#45;free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] 2 simple ??: program exit w/graph, update graph real-time
On Thu, Apr 23, 2009 at 1:04 PM, Esmail ebo...@hotmail.com wrote: Hi, I have two quick questions: 1. Is it possible to exit a Python program but still have the graph window generated by pylot remain visible? Right now the program stops when I display the (only) final graph. When I close this window, the program exits. I would like to finish the program, but have the graph stay visible if that's possible (I suppose I could save a graphics file and then display it - but that's a bit different) 2. Is it possible to update graphs somewhat efficiently during the runtime of the program? Say I have a loop that generates value to be plotted. Right now I collect them and plot them at the end, ie values = [] for i in range(0, 200): values.append(i) various pyplot commands to plot the values list. I wonder if I could have the graph update during each iteration instead giving me an up-to-date view of the data. (The above is a super simplified example of course) Try this: http://matplotlib.sourceforge.net/examples/animation/simple_anim_gtk.html (If not gtk, there are other examples there.) Ryan -- Ryan May Graduate Research Assistant School of Meteorology University of Oklahoma -- Crystal Reports #45; New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty#45;free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] 2 simple ??: program exit w/graph, update graph real-time
Ryan May wrote: Try this: http://matplotlib.sourceforge.net/examples/animation/simple_anim_gtk.html (If not gtk, there are other examples there.) Thanks Ryan, that'll give me some idea with regard to the animation, and real-time drawings. Any idea if it's possible to finish a Python program but still have the graph showing? FWIW, I'm doing this under Linux. Thanks, Esmail -- Crystal Reports #45; New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty#45;free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] setting hist(log=True) causes recursion depth to be exceeded
Hello, I am sorry if this gets double posted but it has spent more than a day in mailing-list limbo! I have been trying to plot a hist of a large data array (len ~ 15,000) and the log=True switch causes the following error to be thrown: RuntimeError: Maximum recursion depth exceeded File /Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/matplotlib/transforms.py, line 87, in __init__ self._parents = WeakKeyDictionary() It works fine when i try it on smaller test data sets. When I use sys.setrecursionlimit() to many values it either still exceeds max depth or blows its mind and dies. Is there any way to do this without MAJOR code length increases? Thanks. -- View this message in context: http://www.nabble.com/setting-hist%28log%3DTrue%29-causes-recursion-depth-to-be-exceeded-tp23204286p23204286.html Sent from the matplotlib - users mailing list archive at Nabble.com. -- Crystal Reports #45; New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty#45;free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] 2 simple ??: program exit w/graph, update graph real-time
On Thu, Apr 23, 2009 at 4:16 PM, Esmail ebo...@hotmail.com wrote: Ryan May wrote: Try this: http://matplotlib.sourceforge.net/examples/animation/simple_anim_gtk.html (If not gtk, there are other examples there.) Thanks Ryan, that'll give me some idea with regard to the animation, and real-time drawings. Any idea if it's possible to finish a Python program but still have the graph showing? FWIW, I'm doing this under Linux. You'd have to run the plotting in a separate process from the computation. subprocess would let you do that, assuming you can spin off a child task that stays alive when the parent exits. You'd also need to get the computing process to give new results to the child plot, maybe using a pipe (which I think subprocess can handle as well.) Ryan -- Ryan May Graduate Research Assistant School of Meteorology University of Oklahoma Sent from Norman, Oklahoma, United States -- Crystal Reports #45; New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty#45;free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Matplotlib on OS X 10.4 (was: can't import pylab)
I've been using python 2.6 for several months. I can't remember how I installed it. Matplotlib is from sourceforge. Filename: matplotlib-0.98.5.2-py2.5-mpkg.zip. To: matplotlib-users@lists.sourceforge.net From: j...@iki.fi Date: Tue, 21 Apr 2009 10:10:10 +0300 Subject: [Matplotlib-users] Matplotlib on OS X 10.4 (was: can't import pylab) John Seales praxbaf...@hotmail.com writes: I'm using Mac os 10.4.11. Python is included in mac os. The error messages refer to Python 2.6: ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/matplotlib/ft2font.so, 2): Library not loaded: /usr/X11R6/lib/libfreetype.6.dylib Referenced from: /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/matplotlib/ft2font.so If you are somehow using this with the system Python, it's no wonder that you are having problems. I think OS X 10.4 includes Python 2.3 or at most 2.4 - version 10.5 has Python 2.5. But perhaps you have installed some other version of Python - one way to test what you are using is to look at where Python gets its modules: ~% python Python 2.5.2 (r252:60911, Feb 22 2008, 07:57:53) [GCC 4.0.1 (Apple Computer, Inc. build 5363)] on darwin Type help, copyright, credits or license for more information. import os os module 'os' from '/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/os.pyc' (So I am using something else than the system-supplied Python, whose os.pyc file is under /System/Library.) Some distributions of Python for OS X are mentioned here: http://matplotlib.sourceforge.net/faq/installing_faq.html#which-python-for-osx Matplotlib I installed from a precompiled version. Is this the version from Sourceforge, or somewhere else? Anyway, the library linking problems sound a lot like you are using software that was not compiled for your version of OS X - I guess most developers have upgraded to Leopard quite some time ago, so they would not notice if something breaks on older releases. The larger question is, which versions of OS X should be supported by the binary packages? The ReadMe.txt bundled with the MacPython 2.6.2 installer says: This package will install MacPython 2.6.2 for Mac OS X 10.3 or later for the following architecture(s): i386, ppc. So Python itself supports Panther and newer, and I think the compiler flags used by Python are inherited by extensions - but if there is something other than just compiler flags to worry about, someone would have to have an installation of the target version of OS X to test on. -- Jouni K. Seppänen http://www.iki.fi/jks -- Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users _ Rediscover Hotmail®: Now available on your iPhone or BlackBerry http://windowslive.com/RediscoverHotmail?ocid=TXT_TAGLM_WL_HM_Rediscover_Mobile2_042009-- Crystal Reports #45; New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty#45;free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] Segmentation fault using imshow on large image
Hi, I've been getting a segmentation fault when trying to display large images. A transcript of a sample session is below. I'm using the TkAgg backend, and I am using numpy, but otherwise I have made no modifications to the matplotlib setup. milkyway /data/glimpseii $ alias pylab alias pylab='/usr/local/adm/config/python/bin/ipython -pylab -log' milkyway /data/glimpseii $ pylab Activating auto-logging. Current session state plus future input saved. Filename : ipython_log.py Mode : rotate Output logging : False Raw input log : False Timestamping : False State : active Python 2.5 (r25:51908, Dec 22 2006, 16:08:43) Type copyright, credits or license for more information. IPython 0.9.1 -- An enhanced Interactive Python. ? - Introduction and overview of IPython's features. %quickref - Quick reference. help - Python's own help system. object? - Details about 'object'. ?object also works, ?? prints more. Welcome to pylab, a matplotlib-based Python environment. For more information, type 'help(pylab)'. In [1]: import matplotlib,pyfits,numpy,scipy In [2]: scipy.__version__ Out[2]: '0.7.0' In [3]: numpy.__version__ Out[3]: '1.3.0' In [4]: matplotlib.__version__ Out[4]: '0.98.5.2' In [5]: f = pyfits.open('GLM_00600+_mosaic_I3.fits') In [6]: f[0].data.shape Out[6]: (10370, 9320) In [7]: f[0].data.dtype Out[7]: dtype('f4') In [8]: imshow(f[0].data) Segmentation fault Any ideas? Thanks, Adam -- Crystal Reports #45; New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty#45;free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Matplotlib on OS X 10.4
John Seales praxbaf...@hotmail.com writes: I've been using python 2.6 for several months. I can't remember how I installed it. Matplotlib is from sourceforge. Filename: matplotlib-0.98.5.2-py2.5-mpkg.zip. That package only works with Python 2.5 (hence py2.5 in the file name). If you somehow managed to install it into your Python 2.6 hierarchy, that would explain the strange error messages. -- Jouni K. Seppänen http://www.iki.fi/jks -- Crystal Reports #45; New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty#45;free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users