Re: [Matplotlib-users] How by clicking an axes label open a dialog?
Whould you please help me? I am looking forward. sa6113 wrote: I want to use backendQtAgg inorder to imbed plot dialog into basic dialog and by clicking the labels open plot option. I couldn't use 'motion_notify_event' because the event only handles into plot area not in canvas area!!! anybody knows? -- View this message in context: http://old.nabble.com/How-by-clicking-an-axes-label-open-a-dialog--tp29661031p29715956.html Sent from the matplotlib - users mailing list archive at Nabble.com. -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] How by clicking an axes label open a dialog?
Whould you please help me? I am looking forward. sa6113 wrote: I want to use backendQtAgg inorder to imbed plot dialog into basic dialog and by clicking the labels open plot option. I couldn't use 'motion_notify_event' because the event only handles into plot area not in canvas area!!! anybody knows? -- View this message in context: http://old.nabble.com/How-by-clicking-an-axes-label-open-a-dialog--tp29661031p29715986.html Sent from the matplotlib - users mailing list archive at Nabble.com. -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] problem building matplotlib
On 09/14/2010 01:36 PM, Dan Kortschak wrote: Hello, I just tried to have just tried to build matplotlib, but it fails - and is unable to find wxPython (looking under 2.8 rather than 2.6 where is lives - installed from source) or libgtk-2 headers (installed from apt repo). Can anyone suggest how to resolve these issues? If you want to use wx, you need 2.8. It looks like you don't have any of the gui dependencies. Since you you are running ubuntu, I suggest you use the installation method recently described in this thread: http://www.mail-archive.com/matplotlib-users@lists.sourceforge.net/msg18464.html Be careful to read down through the thread; the first try at comprehensive instructions has an error. Eric -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] Matplotlib and PySide ?
Hello, Does anybody know if matplotlib work with pyside ? If it does how to use matplotib with pyside ? Thanks, David -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] problem building matplotlib
Thanks Eric, The gui dependencies are secondary, but I will look into that. Since they are optional, the absence of them should not be the cause of the failure, but it looks like it might be. Is that the case? cheers Dan On Tue, 2010-09-14 at 21:42 -1000, Eric Firing wrote: On 09/14/2010 01:36 PM, Dan Kortschak wrote: Hello, I just tried to have just tried to build matplotlib, but it fails - and is unable to find wxPython (looking under 2.8 rather than 2.6 where is lives - installed from source) or libgtk-2 headers (installed from apt repo). Can anyone suggest how to resolve these issues? If you want to use wx, you need 2.8. It looks like you don't have any of the gui dependencies. Since you you are running ubuntu, I suggest you use the installation method recently described in this thread: http://www.mail-archive.com/matplotlib-users@lists.sourceforge.net/msg18464.html Be careful to read down through the thread; the first try at comprehensive instructions has an error. Eric -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] problem building matplotlib
I've just has a look at that and unfortunately it does not fix the problem Is there any other suggestion that might be worth a try? I should point out that I already have numpy 1.4.1 installed and scipy 0.8.0 as dependencies for other packages. thanks Dan On Tue, 2010-09-14 at 21:42 -1000, Eric Firing wrote: Since you you are running ubuntu, I suggest you use the installation method recently described in this thread: http://www.mail-archive.com/matplotlib-users@lists.sourceforge.net/msg18464.html Be careful to read down through the thread; the first try at comprehensive instructions has an error. -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] quiver units
Hi Everyone, I'm trying to make a quiver plot using the example in examples collection. The documentation says that I can define the arrow units as: ** *units*: [‘width’ | ‘height’ | ‘dots’ | ‘inches’ | ‘x’ | ‘y’ | ‘xy’]so I did: from pylab import * from numpy import ma X,Y = meshgrid( arange(0,2*pi,.2),arange(0,2*pi,.2) ) U = cos(X) V = sin(Y) figure() M = sqrt(pow(U, 2) + pow(V, 2)) Q = quiver( X, Y, U, V, M, units='x', pivot='tip', width=0.022, scale=1/0.15) Q = quiver( X, Y, U, V, M, units='xy', pivot='tip', width=0.022, scale=1/0.15) qk = quiverkey(Q, 0.9, 1.05, 1, r'$1 \frac{m}{s}$', labelpos='E', fontproperties={'weight': 'bold'}) plot(X, Y, 'k.') axis([-1, 7, -1, 7]) title(scales with x view; pivot='tip') show() When I actually try the option 'xy' I get the following error: Exception in Tkinter callback Traceback (most recent call last): File /usr/lib/python2.6/lib-tk/Tkinter.py, line 1413, in __call__ return self.func(*args) File /usr/lib/pymodules/python2.6/matplotlib/backends/backend_tkagg.py, line 212, in resize self.show() File /usr/lib/pymodules/python2.6/matplotlib/backends/backend_tkagg.py, line 215, in draw FigureCanvasAgg.draw(self) File /usr/lib/pymodules/python2.6/matplotlib/backends/backend_agg.py, line 314, in draw self.figure.draw(self.renderer) File /usr/lib/pymodules/python2.6/matplotlib/artist.py, line 46, in draw_wrapper draw(artist, renderer, *args, **kwargs) File /usr/lib/pymodules/python2.6/matplotlib/figure.py, line 773, in draw for a in self.axes: a.draw(renderer) File /usr/lib/pymodules/python2.6/matplotlib/artist.py, line 46, in draw_wrapper draw(artist, renderer, *args, **kwargs) File /usr/lib/pymodules/python2.6/matplotlib/axes.py, line 1735, in draw a.draw(renderer) File /usr/lib/pymodules/python2.6/matplotlib/artist.py, line 46, in draw_wrapper draw(artist, renderer, *args, **kwargs) File /usr/lib/pymodules/python2.6/matplotlib/quiver.py, line 436, in draw self._init() File /usr/lib/pymodules/python2.6/matplotlib/quiver.py, line 425, in _init trans = self._set_transform() File /usr/lib/pymodules/python2.6/matplotlib/quiver.py, line 481, in _set_transform raise ValueError('unrecognized units') ValueError: unrecognized units Can someone point to where am I mistaken ? Is it a mistake in the documentation ? Thanks, -- Oz Nahum Graduate Student Zentrum für Angewandte Geologie Universität Tübingen --- Imagine there's no countries it isn't hard to do Nothing to kill or die for And no religion too Imagine all the people Living life in peace -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] quiver units
On Wed, Sep 15, 2010 at 7:27 AM, Oz Nahum nahu...@gmail.com wrote: Hi Everyone, I'm trying to make a quiver plot using the example in examples collection. The documentation says that I can define the arrow units as: units: [‘width’ | ‘height’ | ‘dots’ | ‘inches’ | ‘x’ | ‘y’ | ‘xy’]so I did: from pylab import * from numpy import ma X,Y = meshgrid( arange(0,2*pi,.2),arange(0,2*pi,.2) ) U = cos(X) V = sin(Y) figure() M = sqrt(pow(U, 2) + pow(V, 2)) Q = quiver( X, Y, U, V, M, units='x', pivot='tip', width=0.022, scale=1/0.15) Q = quiver( X, Y, U, V, M, units='xy', pivot='tip', width=0.022, scale=1/0.15) qk = quiverkey(Q, 0.9, 1.05, 1, r'$1 \frac{m}{s}$', labelpos='E', fontproperties={'weight': 'bold'}) plot(X, Y, 'k.') axis([-1, 7, -1, 7]) title(scales with x view; pivot='tip') show() When I actually try the option 'xy' I get the following error: Exception in Tkinter callback Traceback (most recent call last): File /usr/lib/python2.6/lib-tk/Tkinter.py, line 1413, in __call__ return self.func(*args) File /usr/lib/pymodules/python2.6/matplotlib/backends/backend_tkagg.py, line 212, in resize self.show() File /usr/lib/pymodules/python2.6/matplotlib/backends/backend_tkagg.py, line 215, in draw FigureCanvasAgg.draw(self) File /usr/lib/pymodules/python2.6/matplotlib/backends/backend_agg.py, line 314, in draw self.figure.draw(self.renderer) File /usr/lib/pymodules/python2.6/matplotlib/artist.py, line 46, in draw_wrapper draw(artist, renderer, *args, **kwargs) File /usr/lib/pymodules/python2.6/matplotlib/figure.py, line 773, in draw for a in self.axes: a.draw(renderer) File /usr/lib/pymodules/python2.6/matplotlib/artist.py, line 46, in draw_wrapper draw(artist, renderer, *args, **kwargs) File /usr/lib/pymodules/python2.6/matplotlib/axes.py, line 1735, in draw a.draw(renderer) File /usr/lib/pymodules/python2.6/matplotlib/artist.py, line 46, in draw_wrapper draw(artist, renderer, *args, **kwargs) File /usr/lib/pymodules/python2.6/matplotlib/quiver.py, line 436, in draw self._init() File /usr/lib/pymodules/python2.6/matplotlib/quiver.py, line 425, in _init trans = self._set_transform() File /usr/lib/pymodules/python2.6/matplotlib/quiver.py, line 481, in _set_transform raise ValueError('unrecognized units') ValueError: unrecognized units Can someone point to where am I mistaken ? Is it a mistake in the documentation ? Your code works fine for me here on 1.0.0. What version are you running? Ryan -- Ryan May Graduate Research Assistant School of Meteorology University of Oklahoma -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] weird behaviour in x axis
Thanks! This got it working. Also thanks to the other for explaining why python does it. I understand the reason, but I think its weird to have that as the default setting. efiring wrote: On 09/11/2010 11:12 AM, freekk wrote: Im trying to do a very simple x vs y plot. Where the x values range between 3247 and 3256 and y between 0 and 1. This data is stored in data.dat. I plot it using the code below, the resulting plot is shown in the first of the two plots below. Everything goes well except for the x axis, for some reason tickmarks from 0 up to 9 appear. At the far end of the axis my xmin is printed: 3.247e3. I started looking for the cause and it turns out that as long as my range in x is lower than 10, this happens. If I change the xlimits to xlim(3246,3256) I get the plot at the bottom of this page, everything is fine. But if I change this to for instance xlim(3246.01,3256) or xlim(3245, 3254.99) I get the same behaviour as in the first graph. Does any one have any experience with this/ know the reason for this happening? Thanks! from numpy import * from pylab import * datafile = mlab.load('./data.dat') xx=datafile[:,0] yy=datafile[:,1] plot(xx,yy,'black') xlim(3247,3256) ylim(0,1.2) with older mpl, try this: gca().xaxis.set_major_formatter(ScalarFormatter(useOffset=False)) with 1.0 or later try the following instead: ticklabel_format(useOffset=False) Eric show() http://old.nabble.com/file/p29687404/wrong.png http://old.nabble.com/file/p29687404/right.png -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- View this message in context: http://old.nabble.com/weird-behaviour-in-x-axis-tp29687404p29718992.html Sent from the matplotlib - users mailing list archive at Nabble.com. -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Matplotlib and PySide ?
On Wed, Sep 15, 2010 at 3:03 AM, David Trémouilles david.t...@gmail.comwrote: Hello, Does anybody know if matplotlib work with pyside ? If it does how to use matplotib with pyside ? Thanks, David David, I am not familiar with PySide, so I looked it up. Please correct me if I am wrong, but it appears to be an alternative to PyQt for licensing reasons, and the FAQ says that it is API compatible. On the python side of matplotlib, I wonder if using PySide would be as simple as just replacing all of the import PyQt or import PyQt4 with import PySide (and all the from PyQt import ...). Does PySide still use the same compiled Qt libraries that PyQt uses? If so, then I don't *think* you need to recompile the Qt backends, but I am not entirely sure. Good luck! Ben Root -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] weird behaviour in x axis
On Tue, Sep 14, 2010 at 11:12 AM, Jan Skowron jan.skow...@gmail.com wrote: Hi, apropos this offset discussion. matplotlib makes offsets not aligned to the full tens or some other easy number with small amount of non-zero digits in front? For example having ticks: 4917, 4918, 4919, 4920, 4921, 4922 it will now display: 1, 2, 3, 4, 5, 6 with offset 4916 (of even +4.916e3) this makes reading values on the axis really really hard as every time one have to perform not obvious summations with all digits of length. It would be beneficial to have as a default behaviour some optimization of offsets to have it as some basic number for easy reading instead of current behaviour that tries to minimize the number of digits in the ticks and starts from a low number like 1 or 0.05 or so. In our case the best display would be: 17, 18, 19, 20, 21, 22 with offset 4900 So we minimize the number of non-zero digits in offset and not a number of digits in tick labels. Another more ridiculous example (from life) are ticks with values: 4916.25, 4916.30, 4916.35, 4916.40, 4916.45 are displayed as: 0.05, 0.10, 0.15, 0.20, 0.25 with offset +4.9162e3 and with good algorithm should be displayed as: 0.25, 0.30, 0.35, 0.40, 0.45 with offset 4962 (nottice that not +4.962e3 as it usually displays now) and if we would cross the boundary between 4962 and 4963 than ticks should look like: 2.80, 2.85, 2.90, 2.95, 3.00, 3.05 with offset 4960 In my opinion the current behaviour of offsets really hampers the usability of these at all, and probably 90% of users spent some time on nothing but trying to figure out how to turn this thing off (thanks for sending this solutions here). So this is message to signal or show the need for fixing this algorithm. For now I think that the title of this post: weird behaviour in x axis, really summarize current offset algorithm nicely. Thanks for your comments, Jan I like that idea as it is certainly more intuitive. Essentially, it would find the most significant bits that are common to all ticks and use that for the offset. Does anybody know where the current code is? I would be willing to take a look at it today and see what I can do. Thanks, Ben Root -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Ternary Plotting using Matplotlib
On Tue, Sep 14, 2010 at 10:37 AM, Lab Rat wi.lab...@gmail.com wrote: I saw some 3d ternary plots on the URL: http://www.hca.com/index.php?id=76L=0 that I'd love to recreate using matplotlib. Can anyone give me some general code examples of where I should likely begin? Thanks in advance! Wil Ah, my wife showed me these plots once. odd little buggers... As far as I know, these plots are not available in matplotlib at the moment. However, I might be persuaded to write up some code to do a 2D version of it (3D version would come much, much later). If I could get this to work, I might finally convince my wife to switch from matlab/excel to python! Do you have any resources that explains how these graphs work? Thanks, Ben Root -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Ternary Plotting using Matplotlib
I believe that Chloe Lewis may have posted about this before. She has code for doing some ternary plotting type stuff that may be a good place to start for you: http://nature.berkeley.edu/~chlewis/Sourcecode.html Uri On Wed, Sep 15, 2010 at 11:23, Benjamin Root ben.r...@ou.edu wrote: On Tue, Sep 14, 2010 at 10:37 AM, Lab Rat wi.lab...@gmail.com wrote: I saw some 3d ternary plots on the URL: http://www.hca.com/index.php?id=76L=0 that I'd love to recreate using matplotlib. Can anyone give me some general code examples of where I should likely begin? Thanks in advance! Wil Ah, my wife showed me these plots once. odd little buggers... As far as I know, these plots are not available in matplotlib at the moment. However, I might be persuaded to write up some code to do a 2D version of it (3D version would come much, much later). If I could get this to work, I might finally convince my wife to switch from matlab/excel to python! Do you have any resources that explains how these graphs work? Thanks, Ben Root -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Uri Laserson Graduate Student, Biomedical Engineering Harvard-MIT Division of Health Sciences and Technology M +1 917 742 8019 laser...@mit.edu -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Ternary Plotting using Matplotlib
Lab Rat, Ben; Yes, you could use the ternary code I've put together to do the CAC plots in 2D; defining a complete triangular grid and triangular patches would be easy. If I'm reading the examples correctly, all the third-dimension information duplicates the color information. They're simpler than they look, Ben, which is part of their charm; we use them for any mixture of three elements where a+b+c is constant, so really they're 2D data. (Why bother, people ask? Because which of the elements is most interesting varies with the mixture and use, so we like having all three axes labeled. Note: many versions get one of the axes backwards.) C On Sep 15, 2010, at 8:38 AM, Uri Laserson wrote: I believe that Chloe Lewis may have posted about this before. She has code for doing some ternary plotting type stuff that may be a good place to start for you: http://nature.berkeley.edu/~chlewis/Sourcecode.html Uri On Wed, Sep 15, 2010 at 11:23, Benjamin Root ben.r...@ou.edu wrote: On Tue, Sep 14, 2010 at 10:37 AM, Lab Rat wi.lab...@gmail.com wrote: I saw some 3d ternary plots on the URL: http://www.hca.com/index.php?id=76L=0 that I'd love to recreate using matplotlib. Can anyone give me some general code examples of where I should likely begin? Thanks in advance! Wil Ah, my wife showed me these plots once. odd little buggers... As far as I know, these plots are not available in matplotlib at the moment. However, I might be persuaded to write up some code to do a 2D version of it (3D version would come much, much later). If I could get this to work, I might finally convince my wife to switch from matlab/excel to python! Do you have any resources that explains how these graphs work? Thanks, Ben Root -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] problem building matplotlib
On 09/15/2010 03:50 AM, Benjamin Root wrote: On Wed, Sep 15, 2010 at 5:34 AM, Dan Kortschak dan.kortsc...@adelaide.edu.au mailto:dan.kortsc...@adelaide.edu.au wrote: I've just has a look at that and unfortunately it does not fix the problem Is there any other suggestion that might be worth a try? I should point out that I already have numpy 1.4.1 installed and scipy 0.8.0 as dependencies for other packages. thanks Dan Hmm, that shouldn't be an issue. Maybe you need to completely clean out the matplotlib build (by removing the build directory) and try again? Be sure to save the build output so we can see what happens if/when it fails. Looking again at the original build output, and at setup.py and setupext.py, it appears that there is a bug in the latter. If the wrong version of wx is found, it should be disabling the attempt to build wxagg, and reporting wxPython: no. We need to fix the bug, but the workaround for now is to use a setup.cfg file with wxagg = False Eric Ben Root -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] weird behaviour in x axis
On 09/15/2010 04:55 AM, Benjamin Root wrote: On Tue, Sep 14, 2010 at 11:12 AM, Jan Skowron jan.skow...@gmail.com mailto:jan.skow...@gmail.com wrote: Hi, apropos this offset discussion. matplotlib makes offsets not aligned to the full tens or some other easy number with small amount of non-zero digits in front? For example having ticks: 4917, 4918, 4919, 4920, 4921, 4922 it will now display: 1, 2, 3, 4, 5, 6 with offset 4916 (of even +4.916e3) this makes reading values on the axis really really hard as every time one have to perform not obvious summations with all digits of length. It would be beneficial to have as a default behaviour some optimization of offsets to have it as some basic number for easy reading instead of current behaviour that tries to minimize the number of digits in the ticks and starts from a low number like 1 or 0.05 or so. In our case the best display would be: 17, 18, 19, 20, 21, 22 with offset 4900 So we minimize the number of non-zero digits in offset and not a number of digits in tick labels. Another more ridiculous example (from life) are ticks with values: 4916.25, 4916.30, 4916.35, 4916.40, 4916.45 are displayed as: 0.05, 0.10, 0.15, 0.20, 0.25 with offset +4.9162e3 and with good algorithm should be displayed as: 0.25, 0.30, 0.35, 0.40, 0.45 with offset 4962 (nottice that not +4.962e3 as it usually displays now) and if we would cross the boundary between 4962 and 4963 than ticks should look like: 2.80, 2.85, 2.90, 2.95, 3.00, 3.05 with offset 4960 In my opinion the current behaviour of offsets really hampers the usability of these at all, and probably 90% of users spent some time on nothing but trying to figure out how to turn this thing off (thanks for sending this solutions here). So this is message to signal or show the need for fixing this algorithm. For now I think that the title of this post: weird behaviour in x axis, really summarize current offset algorithm nicely. Thanks for your comments, Jan I like that idea as it is certainly more intuitive. Essentially, it would find the most significant bits that are common to all ticks and use that for the offset. Does anybody know where the current code is? I would be willing to take a look at it today and see what I can do. In ticker.ScalarFormatter._setOffset (or something like that). Be careful not to make it too complicated; maybe it can even be made simpler. I think that as a first shot, something like adding +3 (or maybe it would be -3) to a couple lines of code might be a step in the right direction--and maybe adequate. Thank you. Eric Thanks, Ben Root -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] weird behaviour in x axis
On Wed, Sep 15, 2010 at 12:37 PM, Eric Firing efir...@hawaii.edu wrote: On 09/15/2010 04:55 AM, Benjamin Root wrote: On Tue, Sep 14, 2010 at 11:12 AM, Jan Skowron jan.skow...@gmail.com mailto:jan.skow...@gmail.com wrote: Hi, apropos this offset discussion. matplotlib makes offsets not aligned to the full tens or some other easy number with small amount of non-zero digits in front? For example having ticks: 4917, 4918, 4919, 4920, 4921, 4922 it will now display: 1, 2, 3, 4, 5, 6 with offset 4916 (of even +4.916e3) this makes reading values on the axis really really hard as every time one have to perform not obvious summations with all digits of length. It would be beneficial to have as a default behaviour some optimization of offsets to have it as some basic number for easy reading instead of current behaviour that tries to minimize the number of digits in the ticks and starts from a low number like 1 or 0.05 or so. In our case the best display would be: 17, 18, 19, 20, 21, 22 with offset 4900 So we minimize the number of non-zero digits in offset and not a number of digits in tick labels. Another more ridiculous example (from life) are ticks with values: 4916.25, 4916.30, 4916.35, 4916.40, 4916.45 are displayed as: 0.05, 0.10, 0.15, 0.20, 0.25 with offset +4.9162e3 and with good algorithm should be displayed as: 0.25, 0.30, 0.35, 0.40, 0.45 with offset 4962 (nottice that not +4.962e3 as it usually displays now) and if we would cross the boundary between 4962 and 4963 than ticks should look like: 2.80, 2.85, 2.90, 2.95, 3.00, 3.05 with offset 4960 In my opinion the current behaviour of offsets really hampers the usability of these at all, and probably 90% of users spent some time on nothing but trying to figure out how to turn this thing off (thanks for sending this solutions here). So this is message to signal or show the need for fixing this algorithm. For now I think that the title of this post: weird behaviour in x axis, really summarize current offset algorithm nicely. Thanks for your comments, Jan I like that idea as it is certainly more intuitive. Essentially, it would find the most significant bits that are common to all ticks and use that for the offset. Does anybody know where the current code is? I would be willing to take a look at it today and see what I can do. In ticker.ScalarFormatter._setOffset (or something like that). Be careful not to make it too complicated; maybe it can even be made simpler. I think that as a first shot, something like adding +3 (or maybe it would be -3) to a couple lines of code might be a step in the right direction--and maybe adequate. Thank you. Eric Here is what I came up with. In ticker.ScalarFormatter._setOffset, I set a variable called common_oom to the same value as 'range_oom'. This order of magnitude should be the smallest possible magnitude where there all the significant digits are the same. Then, I do: tickdiff = np.sum(np.diff(np.trunc(locs * 10**-common_oom))) while tickdiff = 1.0 : common_oom += 1.0 tickdiff = np.sum(np.diff(np.trunc(locs * 10**-common_oom))) Essentially, I find increment common_oom until the differences in the rounded versions of the locs become significant. Then, I use common_oom instead of range_oom in calculating the offset. I suspect it could be done better, and I am not certain that there are no edge cases regarding the use of trunc. Thoughts, concerns? Ben Root cleanoffsets.patch Description: Binary data -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] weird behaviour in x axis
On 09/15/2010 08:25 AM, Benjamin Root wrote: On Wed, Sep 15, 2010 at 12:37 PM, Eric Firing efir...@hawaii.edu mailto:efir...@hawaii.edu wrote: On 09/15/2010 04:55 AM, Benjamin Root wrote: On Tue, Sep 14, 2010 at 11:12 AM, Jan Skowron jan.skow...@gmail.com mailto:jan.skow...@gmail.com mailto:jan.skow...@gmail.com mailto:jan.skow...@gmail.com wrote: Hi, apropos this offset discussion. matplotlib makes offsets not aligned to the full tens or some other easy number with small amount of non-zero digits in front? For example having ticks: 4917, 4918, 4919, 4920, 4921, 4922 it will now display: 1, 2, 3, 4, 5, 6 with offset 4916 (of even +4.916e3) this makes reading values on the axis really really hard as every time one have to perform not obvious summations with all digits of length. It would be beneficial to have as a default behaviour some optimization of offsets to have it as some basic number for easy reading instead of current behaviour that tries to minimize the number of digits in the ticks and starts from a low number like 1 or 0.05 or so. In our case the best display would be: 17, 18, 19, 20, 21, 22 with offset 4900 So we minimize the number of non-zero digits in offset and not a number of digits in tick labels. Another more ridiculous example (from life) are ticks with values: 4916.25, 4916.30, 4916.35, 4916.40, 4916.45 are displayed as: 0.05, 0.10, 0.15, 0.20, 0.25 with offset +4.9162e3 and with good algorithm should be displayed as: 0.25, 0.30, 0.35, 0.40, 0.45 with offset 4962 (nottice that not +4.962e3 as it usually displays now) and if we would cross the boundary between 4962 and 4963 than ticks should look like: 2.80, 2.85, 2.90, 2.95, 3.00, 3.05 with offset 4960 In my opinion the current behaviour of offsets really hampers the usability of these at all, and probably 90% of users spent some time on nothing but trying to figure out how to turn this thing off (thanks for sending this solutions here). So this is message to signal or show the need for fixing this algorithm. For now I think that the title of this post: weird behaviour in x axis, really summarize current offset algorithm nicely. Thanks for your comments, Jan I like that idea as it is certainly more intuitive. Essentially, it would find the most significant bits that are common to all ticks and use that for the offset. Does anybody know where the current code is? I would be willing to take a look at it today and see what I can do. In ticker.ScalarFormatter._setOffset (or something like that). Be careful not to make it too complicated; maybe it can even be made simpler. I think that as a first shot, something like adding +3 (or maybe it would be -3) to a couple lines of code might be a step in the right direction--and maybe adequate. Thank you. Eric Here is what I came up with. In ticker.ScalarFormatter._setOffset, I set a variable called common_oom to the same value as 'range_oom'. This order of magnitude should be the smallest possible magnitude where there all the significant digits are the same. Then, I do: tickdiff = np.sum(np.diff(np.trunc(locs * 10**-common_oom))) while tickdiff = 1.0 : common_oom += 1.0 tickdiff = np.sum(np.diff(np.trunc(locs * 10**-common_oom))) Essentially, I find increment common_oom until the differences in the rounded versions of the locs become significant. Then, I use common_oom instead of range_oom in calculating the offset. I suspect it could be done better, and I am not certain that there are no edge cases regarding the use of trunc. Thoughts, concerns? Ben Root Ben, I can't look closely right now, so here are only very quick off-the-cuff comments: 1) for testing, try to come up with a good selection of cases: negative, positive, very close to, but less than 1, very close to, but greater than, 1, etc. 2) I'm concerned that the sort of approach you are describing may be slow. The process of generating a plot, and redrawing it upon zoom/pan/resize, is already badly slowed down by the ticks and tick labels, and I would hate to see this pesky offset make the situation worse. 3) Isn't there a good-enough solution involving a single math calculation? 4) Although I have complained about the ever-expanding set of rcParams, *maybe* the
[Matplotlib-users] Level surface of a function of 3 variables
I have a function of three variables and am interested in plotting the zero level surface: f(x,y,z) = 0 Is there a simple way to plot this level surface in 3-D without having to resort to meshing up x and y, and solving for the z that satisfies the equation? I can do this, but it gets messy because there are anywhere from 0 to 2 solutions to the equation for each point in the x-y plane. The mplot3d examples all seem to calculate the z-data simply from simple functions of x and y. Thanks, ~Luke -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] Error
Hi, My problem is that: http://pastebin.com/ZPzdC5c8 but on my code: http://pastebin.com/Rgbm2Fgd I include the *use* command as a firstline what could be? Thanks Waleria -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Permission error after installing MPL 1.0 on Mac
Jeremy Conlin jlcon...@... writes: I recently installed MPL on two Macs, one running 10.6 and another running 10.5. When I try to plot, I get the following error: TclError: couldn't open /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/ site-packages/matplotlib/mpl-data/images/home.ppm: permission denied After checking, it's true that only the owner has read permissions. This is easy enough on my end, but I wonder if there is a problem with the distributed installer that should have the correct permissions for these images. Has anyone else seen this problem or is it just me? Jeremy I'm having the exact same problem. I recently installed python 2.6 on 2 different macs, one using OS X 10.5 and one using 10.6. One is a powerPC and one's intel, but I get the same error. -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Error
On Wed, Sep 15, 2010 at 2:29 PM, Waléria Antunes David waleriantu...@gmail.com wrote: Hi, My problem is that: http://pastebin.com/ZPzdC5c8 but on my code: http://pastebin.com/Rgbm2Fgd I include the *use* command as a firstline what could be? Thanks Waleria Waleria, I don't think the error is with matplotlib. That error should really just be a warning. This seems to be the real error: [Wed Sep 15 14:03:17 2010] [error] [client 127.0.0.1] File does not exist: /var/www/django/grafico, referer: http://localhost/simuladores/index/; As for your imports, you really should consolidate and simplify it. The reason for importing only certain things is to prevent importing too much code and to keep the namespace clean. However, once you do from matplotlib import use, python still has to process all of matplotlib. So, either import everything you need at that line or work from the matplotlib namespace (import matplotlib as mpl). Also, I would be cautious about using both pylab and matplotlib.pyplot in the same code. These modules each make different assumptions about how you code and mixing them can cause some odd behaviors. I hope this helps, Ben Root -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Permission error after installing MPL 1.0 on Mac
2010/9/15 tom tom.chris...@gmail.com: Jeremy Conlin jlcon...@... writes: I recently installed MPL on two Macs, one running 10.6 and another running 10.5. When I try to plot, I get the following error: TclError: couldn't open /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/ site-packages/matplotlib/mpl-data/images/home.ppm: permission denied After checking, it's true that only the owner has read permissions. This is easy enough on my end, but I wonder if there is a problem with the distributed installer that should have the correct permissions for these images. Has anyone else seen this problem or is it just me? Jeremy I'm having the exact same problem. I recently installed python 2.6 on 2 different macs, one using OS X 10.5 and one using 10.6. One is a powerPC and one's intel, but I get the same error. Ok, so it seems to be the installer, who's doing the Mac installers usually? Friedrich -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] problem building matplotlib
That fixes the problem. thanks On Wed, 2010-09-15 at 07:30 -1000, Eric Firing wrote: Looking again at the original build output, and at setup.py and setupext.py, it appears that there is a bug in the latter. If the wrong version of wx is found, it should be disabling the attempt to build wxagg, and reporting wxPython: no. We need to fix the bug, but the workaround for now is to use a setup.cfg file with wxagg = False Eric -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] problem building matplotlib
On 09/15/2010 01:17 PM, Dan Kortschak wrote: That fixes the problem. thanks On Wed, 2010-09-15 at 07:30 -1000, Eric Firing wrote: Looking again at the original build output, and at setup.py and setupext.py, it appears that there is a bug in the latter. If the wrong version of wx is found, it should be disabling the attempt to build wxagg, and reporting wxPython: no. We need to fix the bug, but the workaround for now is to use a setup.cfg file with wxagg = False Eric It turns out that the _wxagg extension was specific to version 2.6, and for a long time we have required version 2.8, so there was no point in trying to build the extension. In svn 8702 I removed the extension along with related 2.6-only code, and the setup.py references to building the extension. Eric -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Error
On Wed, Sep 15, 2010 at 4:45 PM, Benjamin Root ben.r...@ou.edu wrote: Also, I would be cautious about using both pylab and matplotlib.pyplot in the same code. These modules each make different assumptions about how you code and mixing them can cause some odd behaviors. Do you have a specific example? pylab is just pyplot with some additional imports from mlab and numpy. Otherwise, they're the same plotting API. Ryan -- Ryan May Graduate Research Assistant School of Meteorology University of Oklahoma -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Error
On Wed, Sep 15, 2010 at 8:07 PM, Ryan May rma...@gmail.com wrote: On Wed, Sep 15, 2010 at 4:45 PM, Benjamin Root ben.r...@ou.edu wrote: Also, I would be cautious about using both pylab and matplotlib.pyplot in the same code. These modules each make different assumptions about how you code and mixing them can cause some odd behaviors. Do you have a specific example? pylab is just pyplot with some additional imports from mlab and numpy. Otherwise, they're the same plotting API. Ryan Sorry, no, I don't have any specific examples. Only that I have seen mysterious issues disappear when the code was converted into one style or the other. This was way back in the days when I was just learning matplotlib, so I really didn't understand what I was doing at the time. In any case, it was those issues that caused me to completely switch over to the pyplot style. Ben Root -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
Re: [Matplotlib-users] Level surface of a function of 3 variables
I think you can make it with pyplot.contourf() and the argument V http://matplotlib.sourceforge.net/api/pyplot_api.html#matplotlib.pyplot.contour contour(Z,V) contour(X,Y,Z,V) draw contour lines at the values specified in sequence V On Wed, Sep 15, 2010 at 9:02 PM, Luke hazelnu...@gmail.com wrote: I have a function of three variables and am interested in plotting the zero level surface: f(x,y,z) = 0 Is there a simple way to plot this level surface in 3-D without having to resort to meshing up x and y, and solving for the z that satisfies the equation? I can do this, but it gets messy because there are anywhere from 0 to 2 solutions to the equation for each point in the x-y plane. The mplot3d examples all seem to calculate the z-data simply from simple functions of x and y. Thanks, ~Luke -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users
[Matplotlib-users] Z channel
Does MPL support in any way the Z channel? If not, is there any possibility to use it? For example, to create a parallel matrix of the same dimensions of the image with the values of Z in each pixel. Thank you very much. David. -- Start uncovering the many advantages of virtual appliances and start using them to simplify application deployment and accelerate your shift to cloud computing. http://p.sf.net/sfu/novell-sfdev2dev ___ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users