[Matplotlib-users] Animation with many moving parts

2010-02-10 Thread Brendan Barnwell
I'm trying to do an animation which plots a large number of items on 
two dimensions, and then animates their positions over time.  I have 
set up the plot with my dimensions on the axes and am using 
canvas.blit (as shown in one of the examples) to update my plot.  I'm 
using text as the markers --- that is, I use the text function to 
display the label of each item (not just a point) at its location on 
the graph.

The problem is that I have a large amount of data.  There are over 
100,000 steps in my time sequence (i.e., places where I might need 
to update the display because some item moved), and even though not 
all of those actually result in a change in the positions, there are 
still several thousand distinct items that need to be plotted and 
moved around.  I'm currently buffering this a bit so that I only 
update on every Nth data point, but it's still rather slow.

I can see one obvious, issue, but I'm not sure how to work around it. 
  The thing is that a large number of the items don't actually move 
around very much over time, and even if one does move around 
relatively frequently, there may be long stretches where it doesn't. 
Yet, on every display update, I am redrawing all 1000+ artists.  I 
feel like there should be some way to move only the points that need 
to be moved, but I'm not sure how to do it.  My idea for how to 
improve it is that, for each display update, I would look at which 
bits of text actually do need to move, look at where they currently 
are, calculate which other texts overlap with those moving, then blit 
a blank rectangle onto the old positions of the moving items, and 
redraw only the moving items and those that were partially erased by 
the blank.  This way items that were nowhere near any change wouldn't 
need to be redrawn.

Is this feasible?  Is there a standard way to go about this?  Is 
there any way to figure out which artists overlap without looping over 
the list of all artists and checking the bbox bounds?  Any other 
suggestions on how to do it?

Thanks,
-- 
Brendan Barnwell
Do not follow where the path may lead.  Go, instead, where there is 
no path, and leave a trail.
--author unknown

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] his problems...

2010-02-10 Thread Matthias Michler
On Tuesday 09 February 2010 17:38:18 Nick Schurch wrote:
 HI all,

 I've been using matplotlip for a while now but mainly for line plots,
 scatter plots and the odd dendrogram. I recently tried plotting a
 histogram (of a binomial function) and encountered a problem. So I
 though I'd try the extremely simple example set on the front of the
 matplotlib page and heres what I got:

 Python 2.4.3 (#1, Sep  3 2009, 15:37:12)
 [GCC 4.1.2 20080704 (Red Hat 4.1.2-46)] on linux2
 Type help, copyright, credits or license for more information.

  from pylab import randn, hist
  x = randn(1)
  hist(x, 100)

 Traceback (most recent call last):
   File stdin, line 1, in ?
   File /usr/lib/python2.4/site-packages/matplotlib/pyplot.py, line
 1633, in hist
 ret =  gca().hist(*args, **kwargs)
   File /usr/lib/python2.4/site-packages/matplotlib/axes.py, line 5060, in
 hist align=align, log=log)
   File /usr/lib/python2.4/site-packages/matplotlib/axes.py, line 3253, in
 bar assert len(height)==nbars, argument 'height' must be %d or scalar %
 nbars AssertionError: argument 'height' must be 101 or scalar

 Any idea why this isn't working? I have matplotlib v0.91.2 - will
 updating to 0.99 solve the problem?

Hi, 

I'm using 

Python 2.5.2 (r252:60911, Jan 20 2010, 21:48:48) 
[GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu3)] on linux2
Type help, copyright, credits or license for more information.
 from pylab import randn, hist, show
 x = randn(1)
 hist(x, 100)
 show()
 import matplotlib
 matplotlib.__version__
'0.91.2'

and get a nice figure with a 100-bins histogram. I don't know what's going 
wrong with your installation.

Kind regards,
Matthias

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] help with view_limits

2010-02-10 Thread Matthias Michler
Hi Che,

I think turning off autoscaling is what you need:

import matplotlib.pyplot as plt
ax = plt.subplot(111, autoscaley_on=False, ylim=(0, 100))
plt.plot([1, 2], [-40, 40])
plt.show()

Kind regards,
Matthias

On Monday 08 February 2010 20:49:50 C M wrote:
 I'd like to set the ticks on the y axis such that they do not display
 anything lower than 0, even if part of the graph below 0 is visible.
 I tried to do this with

 ylocator = AutoLocator()
 ylocator.view_limits(0, 100)
 self.subplot.yaxis.set_major_locator(ylocator)

 but it is not changing anything.  How can I do this?

 Thank you,
 Che


--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] Pick event and annotate

2010-02-10 Thread Nils Wagner
Hi all,

How can I combine onpick events with annotate ?
Any pointer would be appreciated.

import numpy as np
import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_title('click on points')

line, = ax.plot(np.random.rand(100), 'o', picker=5)  # 5 
points tolerance

def onpick(event):
 thisline = event.artist
 xdata = thisline.get_xdata()
 ydata = thisline.get_ydata()
 ind = event.ind
 print 'onpick points:', zip(xdata[ind], ydata[ind]), 
ind
 ax.annotate('Test',xy=(ind, 
ydata[ind]),horizontalalignment='left',verticalalignment='top')
#   ax.redraw_in_frame()

fig.canvas.mpl_connect('pick_event', onpick)

plt.show()



Thanks in advance.

  Nils

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Runtime Error - Need Advice

2010-02-10 Thread Lee Boger
Thanks for all your suggestions Christoph. Launching the Tk Python Shell 
instead of PythonWin seems to work consistently - I get the correct plot 
figure and the correct log_plot.png file created everytime I run the 
script. I never did install Ipython, but I'll consider that for a future 
upgrade.

Lee




Christoph Gohlke cgoh...@uci.edu 
02/09/2010 04:35 PM

To
matplotlib-users matplotlib-users@lists.sourceforge.net
cc

Subject
Re: [Matplotlib-users] Runtime Error - Need Advice




Caterpillar: Confidential Green Retain Until: 03/11/2010 



I can now reproduce this. It seems the same old problem that PythonWin
can not reliably run matplotlib because successive runs of the script
use the same interpreter. Ipython should work. Append pylab.close() to
your script; at least it will not crash on the second run.

-- Christoph

On 2/9/2010 10:44 AM, Lee Boger wrote:
 
 Although, if I close the figure then re-run the script, a new figure
 pops up but it doesn't have any data plotted. Interpreter is now locked
 up. I'm still not fixing it completely. There is also no figure stored
 as a file log_plot.
 
 Lee
 
 
 *Christoph Gohlke cgoh...@uci.edu*
 
 02/09/2010 01:23 PM
 
 
 To
Lee Boger boger_...@cat.com
 cc
 
 Subject
Re: [Matplotlib-users] Runtime Error - Need Advice
 
 
 
 
 
 Caterpillar: Confidential GreenRetain Until: 03/11/2010 
 
 
 
 
 Change the last line to pylab.show() and it should work.
 
 Anyway, this example should not crash the interpreter. I can reproduce
 the crash on Python 2.4, 2.5, and 2.6 (32 and 64 bit) on Windows with
 mpl 0.99.1 but not on Ubuntu 9.1 with mpl 0.99.0.
 
 The shortest example that crashes is:
 
 python -c import pylab;pylab.subplot(111).figure.show()
 
 or on the interactive prompt:
 
 import pylab
 pylab.subplot(111).figure.show()
 exit()
 Fatal Python error: PyEval_RestoreThread: NULL tstate
 
 This application has requested the Runtime to terminate it in an unusual
 way.
 Please contact the application's support team for more information.
 
 
 -- Christoph
 
 On 2/9/2010 7:57 AM, Lee Boger wrote:

 Windows XP Professional with Python 2.5 installed (pywin32 build 210) -
 came with dSPACE software package

 Downloaded and installed matplotlib-0.99.1.win32-py2.5.exe from
 sourceforge.net

 Downloaded and installed numpy-1.4.0-win32-superpack-python2.5.exe from
 sourceforge.net

 Executing the following simple log plot script within PythonWin:

 *from* matplotlib *import* pylab

 # Create some artificial data.
 test_frequency = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 
16,
 17, 18, 19, 20]
 test_results = [-0.2, -0.7, -1.0, -1.5, -2.0, -2.5, -3.0, -3.5, -4, -5,
 -6, -7.1, -8, -9, -10, -11, -12, -15, -20, -25]
 spec_frequency = [6, 8]
 spec_results = [-3.0, -3.0]

 # Plot
 figure = pylab.subplot(111)
 figure.semilogx()
 figure.scatter(test_frequency, test_results, s=20, c='b', marker='s',
 edgecolors='none')
 figure.scatter(spec_frequency, spec_results, s=40, c='g', marker='s',
 edgecolors='none')
 figure.grid(True)
 figure.set_xlabel(rFrequency (Hz), fontsize = 12)
 figure.set_ylabel(rActuator Response (db), fontsize = 12)

 figure.figure.savefig('log_plot')
 figure.figure.show()


 Plots a figure on the screen that looks correct, then the following
 error (when I click OK, PythonWin closes)



 Any advice would be appreciated. Maybe it's an installation or setup
 issue, but I'm pretty knew to Python programming and don't know how to
 debug this.

 Lee Boger



 
--
 The Planet: dedicated and managed hosting, cloud storage, colocation
 Stay online with enterprise data centers and the best network in the
 business
 Choose flexible plans and management services without long-term 
contracts
 Personal 24x7 support from experience hosting pros just a phone call 
away.
 http://p.sf.net/sfu/theplanet-com



 ___
 Matplotlib-users mailing list
 Matplotlib-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/matplotlib-users
 

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Pick event and annotate

2010-02-10 Thread John Hunter
On Wed, Feb 10, 2010 at 4:43 AM, Nils Wagner
nwag...@iam.uni-stuttgart.de wrote:
 Hi all,

 How can I combine onpick events with annotate ?
 Any pointer would be appreciated.

 import numpy as np
 import matplotlib.pyplot as plt

 fig = plt.figure()
 ax = fig.add_subplot(111)
 ax.set_title('click on points')

 line, = ax.plot(np.random.rand(100), 'o', picker=5)  # 5
 points tolerance

 def onpick(event):
     thisline = event.artist
     xdata = thisline.get_xdata()
     ydata = thisline.get_ydata()
     ind = event.ind
     print 'onpick points:', zip(xdata[ind], ydata[ind]),
 ind
     ax.annotate('Test',xy=(ind,
 ydata[ind]),horizontalalignment='left',verticalalignment='top')
 #   ax.redraw_in_frame()


You need to call fig.canvas.draw() at the end of onpick.

JDH


 fig.canvas.mpl_connect('pick_event', onpick)

 plt.show()



 Thanks in advance.

                          Nils

 --
 SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
 Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
 http://p.sf.net/sfu/solaris-dev2dev
 ___
 Matplotlib-users mailing list
 Matplotlib-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/matplotlib-users


--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Sankey diagram

2010-02-10 Thread John Hunter
2010/2/9 Yannick Copin yannick.co...@laposte.net:
 Hi List,

 I made a script to draw very simple (single-direction single-input
 single-sided single-everything) Sankey diagrams (attached). I think I could
 share, if it can be of any use...

Great -- I had never heard of a Sankey diagram but just took a look on
wikipedia.  Very nice -- I contributed this to examples/api and it
will show up on the web site and gallery after the mpl 1.0 release.

Thanks for sending it!
JDH

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Sankey diagram

2010-02-10 Thread Yannick Copin

Hi,

following my own post, I attach an upgraded version of the sankey.py script to 
draw single-direction Sankey diagrams. It now supports multiple inputs and 
double-sided diagrams (see attached example). Let me know if you find it 
useful, and/or have any comment.


Cheers,
--
   .~.   Yannick COPIN  (o:*  Doctus cum libro
   /V\   Institut de physique nucleaire de Lyon (IN2P3 - France)
  // \\  Tel: (33/0) 472 431 968 AIM: YnCopin ICQ: 236931013
 /(   )\ http://snovae.in2p3.fr/ycopin/
  ^`~'^
#!/usr/bin/env python

__author__ = Yannick Copin yco...@ipnl.in2p3.fr
__version__ = Time-stamp: 10/02/2010 16:49 yco...@lyopc548.in2p3.fr

import numpy as N

def sankey(ax,
   outputs=[100.], outlabels=None,
   inputs=[100.], inlabels='',
   dx=40, dy=10, outangle=45, w=3, inangle=30, offset=2, **kwargs):
Draw a Sankey diagram.

outputs: array of outputs, should sum up to 100%
outlabels: output labels (same length as outputs),
   or None (use default labels) or '' (no labels)
inputs and inlabels: similar for inputs
dx: horizontal elongation
dy: vertical elongation
outangle: output arrow angle [deg]
w: output arrow shoulder
inangle: input dip angle
offset: text offset
**kwargs: propagated to Patch (e.g. fill=False)

Return (patch,[intexts,outtexts]).

import matplotlib.patches as mpatches
from matplotlib.path import Path

outs = N.absolute(outputs)
outsigns = N.sign(outputs)
outsigns[-1] = 0   # Last output

ins = N.absolute(inputs)
insigns = N.sign(inputs)
insigns[0] = 0 # First input

assert sum(outs)==100, Outputs don't sum up to 100%
assert sum(ins)==100, Inputs don't sum up to 100%

def add_output(path, loss, sign=1):
h = (loss/2+w)*N.tan(outangle/180.*N.pi) # Arrow tip height
move,(x,y) = path[-1]   # Use last point as reference
if sign==0: # Final loss (horizontal)
path.extend([(Path.LINETO,[x+dx,y]),
 (Path.LINETO,[x+dx,y+w]),
 (Path.LINETO,[x+dx+h,y-loss/2]), # Tip
 (Path.LINETO,[x+dx,y-loss-w]),
 (Path.LINETO,[x+dx,y-loss])])
outtips.append((sign,path[-3][1]))
else:   # Intermediate loss (vertical)
path.extend([(Path.CURVE4,[x+dx/2,y]),
 (Path.CURVE4,[x+dx,y]),
 (Path.CURVE4,[x+dx,y+sign*dy]),
 (Path.LINETO,[x+dx-w,y+sign*dy]),
 (Path.LINETO,[x+dx+loss/2,y+sign*(dy+h)]), # Tip
 (Path.LINETO,[x+dx+loss+w,y+sign*dy]),
 (Path.LINETO,[x+dx+loss,y+sign*dy]),
 (Path.CURVE3,[x+dx+loss,y-sign*loss]),
 (Path.CURVE3,[x+dx/2+loss,y-sign*loss])])
outtips.append((sign,path[-5][1]))

def add_input(path, gain, sign=1):
h = (gain/2)*N.tan(inangle/180.*N.pi) # Dip depth
move,(x,y) = path[-1]   # Use last point as reference
if sign==0: # First gain (horizontal)
path.extend([(Path.LINETO,[x-dx,y]),
 (Path.LINETO,[x-dx+h,y+gain/2]), # Dip
 (Path.LINETO,[x-dx,y+gain])])
xd,yd = path[-2][1] # Dip position
indips.append((sign,[xd-h,yd]))
else:   # Intermediate gain (vertical)
path.extend([(Path.CURVE4,[x-dx/2,y]),
 (Path.CURVE4,[x-dx,y]),
 (Path.CURVE4,[x-dx,y+sign*dy]),
 (Path.LINETO,[x-dx-gain/2,y+sign*(dy-h)]), # Dip
 (Path.LINETO,[x-dx-gain,y+sign*dy]),
 (Path.CURVE3,[x-dx-gain,y-sign*gain]),
 (Path.CURVE3,[x-dx/2-gain,y-sign*gain])])
xd,yd = path[-4][1] # Dip position
indips.append((sign,[xd,yd+sign*h]))

outtips = []# Output arrow tip dir. and positions
urpath = [(Path.MOVETO,[0,100])]# 1st point of upper right path
lrpath = [(Path.LINETO,[0,0])]  # 1st point of lower right path
for loss,sign in zip(outs,outsigns):
add_output(sign=0 and urpath or lrpath, loss, sign=sign)

indips = [] # Input arrow tip dir. and positions
llpath = [(Path.LINETO,[0,0])]  # 1st point of lower left path
ulpath = [(Path.MOVETO,[0,100])]# 1st point of upper left path
for gain,sign in zip(ins,insigns)[::-1]:
add_input(sign=0 and llpath or ulpath, gain, sign=sign)

def revert(path):
A path is not just revertable by path[::-1] because of Bezier
curves.
rpath = []
nextmove = Path.LINETO
for move,pos in path[::-1]:

[Matplotlib-users] Plotting multiline graph with large dataset (6 lines, about 30, 000, 000 points total)

2010-02-10 Thread Krishna K
Hi,
 I am a beginner with matplotlib.
I am trying to analyze huge dataset, the plot would have multiple lines. I
am getting memory error (it fails maxing out ~2.5GB on my system). I am
assuming there are probably ways to simplify the data, I came across
something 'simplify' for 'path', not sure how to use that in my case. My
code looks something as shown below (there are 2 ways I tried), as can be
seen I am using lists, would converting them to numpy arrays significantly
improve things? I am yet to try that. Simplifying function would be best I
guess.

The values on x-axis are cumulative measures (of memory of each element,
element being some basic component in our system) and the y-axis shows
percentage (obtained by
some-count-of-the-element_times_memory-of-the-element/Sum of these for all
elements). If this doesn't make sense, that's ok, the idea is the graph is
expected to not contain sudden crests or troughs.

Method1:
xy_pairs = [x1_vals, y1_vals, x2_vals, y2_vals...]
plt.plot(**xy_pairs)

Method1:
for each_xy_pair:
  plt.plot(x_vals, y_vals)

Both of the above methods don't work.

Thanks,
Krishna.
--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] quiver + dates

2010-02-10 Thread Filipe Pires Alvarenga Fernandes
Hello again, I managed to produce a nice stickplot, thanks to all again.
Here is the script in case anyone is interested.

http://dl.dropbox.com/u/4411725/plt-surf-flx.html

Best, Filipe

On Mon, Feb 8, 2010 at 9:57 AM, Filipe Pires Alvarenga Fernandes 
ocef...@gmail.com wrote:

 Thanks, that worked perfectly.

 Best, Filipe


 On Mon, Feb 8, 2010 at 8:39 AM, Stephane Raynaud 
 stephane.rayn...@gmail.com wrote:

 Hi Filipe,

 you can fist use the quiver() function in the classic way for stick plots,
 then use gca().xaxis_date().

 Here is a simple example :

 import pylab as P
 # t may be generated using date2num()
 t = P.arange(100,110,.1)
 u = P.sin(t)
 v = P.cos(t)
 P.quiver([t],[[0]*len(t)],u,v)
 P.gca().xaxis_date()
 P.show()


 On Sun, Feb 7, 2010 at 6:11 PM, Filipe Pires Alvarenga Fernandes 
 ocef...@gmail.com wrote:

 Hello list,

 I'm trying to create a stick-plot figure using the quiver function from
 matplotlib. However, I'm failing miserably to plot dates in the x-axis. Has
 anyone done this before? Also, is there an effort to create a stickplot
 function?

 Thanks, Filipe

 *
 Filipe Pires Alvarenga Fernandes

 University of Massachusetts Dartmouth
 200 Mill Road - Fairhaven, MA
 Tel: (508) 910-6381
 Email: falvarengafernan...@umassd.edu
  ocef...@yahoo.com.br
  ocef...@gmail.com

 http://ocefpaf.tiddlyspot.com/
 *


 --
 The Planet: dedicated and managed hosting, cloud storage, colocation
 Stay online with enterprise data centers and the best network in the
 business
 Choose flexible plans and management services without long-term contracts
 Personal 24x7 support from experience hosting pros just a phone call
 away.
 http://p.sf.net/sfu/theplanet-com
 ___
 Matplotlib-users mailing list
 Matplotlib-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/matplotlib-users




 --
 Stephane Raynaud



--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] LateX Legend (again)

2010-02-10 Thread Jeffrey Blackburne
Hi everyone,

This has been brought up before, but not completely addressed. Is it  
possible to get the text in a Legend to match the rest of the text  
when using LateX? Here is an example of the problem:

import matplotlib as mpl
mpl.rcParams['text.usetex'] = True
import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot([1,5,2,3])   # random data
plt.figlegend(ax.lines,[r'$\rm{label}$ label'],loc='upper left')
plt.show()

The first word is at least in a roman font, but the font size is  
wrong. I am using svn revision 8005 with gtkagg backend on linux, and  
confirm the behavior with 0.99.0 with tkagg on OS X.

Thanks,
Jeff


--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] Retake control of colorbar?

2010-02-10 Thread Bror Jonsson

Dear all,

This is probably a silly question based on my bias from matlab, but I have 
tried for two days without luck. I need to make pcolor plots in several 
figures, and the go back and add a scatter on each. This procedure is necessary 
due to how I read the data. My problem is that I can't figure out how update 
the colorbar in the end. 

An example is as follows:

#=
import random

import pylab as pl
import numpy as np

from numpy.random import rand

def pcl(fig,val):
pl.figure(fig)
pl.clf()
pl.pcolor(val)
pl.colorbar()

def sct(fig,xvec,yvec,cvec):
pl.figure(fig)
pl.scatter(xvec,yvec,40,cvec)
pl.xlim(0,10)
pl.ylim(0,10)
pl.colorbar(orientation='horizontal')

pcl(1, rand(20,20)*10)
pcl(2, rand(20,20)*10)
pcl(3, rand(20,20)*10)

sct(1,rand(10)*10,rand(10)*10,rand(10)*40)
sct(2,rand(10)*10,rand(10)*10,rand(10)*40)
sct(3,rand(10)*10,rand(10)*10,rand(10)*40)
#=

I would like the pcolor image and the colorbar to have the same clim extents as 
the scatter in the end. Is this in any way possible?

Many thanks for any help!

:-)Bror



--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] Retake control of colorbar?

2010-02-10 Thread Bror Jonsson

Dear all,

This is probably a silly question based on my bias from matlab, but I have 
tried for two days without luck. I need to make pcolor plots in several 
figures, and the go back and add a scatter on each. This procedure is necessary 
due to how I read the data. My problem is that I can't figure out how update 
the colorbar in the end. 

An example is as follows:

#=
import random

import pylab as pl
import numpy as np

from numpy.random import rand

def pcl(fig,val):
   pl.figure(fig)
   pl.clf()
   pl.pcolor(val)
   pl.colorbar()

def sct(fig,xvec,yvec,cvec):
   pl.figure(fig)
   pl.scatter(xvec,yvec,40,cvec)
   pl.xlim(0,10)
   pl.ylim(0,10)
   pl.colorbar(orientation='horizontal')

pcl(1, rand(20,20)*10)
pcl(2, rand(20,20)*10)
pcl(3, rand(20,20)*10)

sct(1,rand(10)*10,rand(10)*10,rand(10)*40)
sct(2,rand(10)*10,rand(10)*10,rand(10)*40)
sct(3,rand(10)*10,rand(10)*10,rand(10)*40)
#=

I would like the pcolor image and the colorbar to have the same clim extents as 
the scatter in the end. Is this in any way possible?

Many thanks for any help!

:-)Bror



--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] LateX Legend (again)

2010-02-10 Thread PHobson
Jeff,

I send all of my figures through LaTeX and don't have this problem. The only 
thing I can think of is to check your matplotlibrc file and make sure you've 
set the legend font to be the same size as the other fonts.

HTH,
-paul h.

 -Original Message-
 From: Jeffrey Blackburne [mailto:je...@mit.edu]
 Sent: Wednesday, February 10, 2010 9:45 AM
 To: matplotlib-users@lists.sourceforge.net
 Subject: [Matplotlib-users] LateX Legend (again)
 
 Hi everyone,
 
 This has been brought up before, but not completely addressed. Is it
 possible to get the text in a Legend to match the rest of the text
 when using LateX? Here is an example of the problem:
 
 import matplotlib as mpl
 mpl.rcParams['text.usetex'] = True
 import matplotlib.pyplot as plt
 
 fig = plt.figure()
 ax = fig.add_subplot(111)
 ax.plot([1,5,2,3])   # random data
 plt.figlegend(ax.lines,[r'$\rm{label}$ label'],loc='upper left')
 plt.show()
 
 The first word is at least in a roman font, but the font size is
 wrong. I am using svn revision 8005 with gtkagg backend on linux, and
 confirm the behavior with 0.99.0 with tkagg on OS X.
 
 Thanks,
 Jeff
 
 
 -
 -
 SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
 Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
 http://p.sf.net/sfu/solaris-dev2dev
 ___
 Matplotlib-users mailing list
 Matplotlib-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/matplotlib-users

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Plotting multiline graph with large dataset (6 lines, about 30, 000, 000 points total

2010-02-10 Thread Oz Nahum
Hello Krishna,

This is really crazy ploting so many data point, after all the human
eye can't separate all the data.
Try sampling the vector of the data point - to a smaller extent.

Here's a quick and dirty solution how to sample every nth element in a
vector - there's probably a faster way, with out loops, but this works
for now

$ python
Python 2.5.5 (r255:77872, Feb  1 2010, 19:53:42)
[GCC 4.4.3] on linux2
Type help, copyright, credits or license for more information.
 from nupmy import arange
Traceback (most recent call last):
  File stdin, line 1, in module
ImportError: No module named nupmy
 from numpy import arange
 a=arange(1,15)
 a
array([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14])
 from numpy import zeros
 a_sampled=zeros(5)
 a_sampled
array([ 0.,  0.,  0.,  0.,  0.])
 range(0,15,5)
[0, 5, 10]
 range(0,15,3)
[0, 3, 6, 9, 12]
 fileter_indecies=range(0,15,3)
 for i in range(len(a_sampled)):
...   a_sampled[i]=a[fileter_indecies[i]]
...
 a_sampled
array([  1.,   4.,   7.,  10.,  13.])


I hope it helps

-- 
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

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Plotting multiline graph with large dataset (6 lines, about 30, 000, 000 points total

2010-02-10 Thread Christopher Barker
Oz Nahum wrote:
 Here's a quick and dirty solution how to sample every nth element in a
 vector - there's probably a faster way, with out loops,

there sure is:

In [8]: orig
Out[8]:
array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19])

In [9]: orig[0:-1:4] # every 4th element
Out[9]: array([ 0,  4,  8, 12, 16])

-Chris


-- 
Christopher Barker, Ph.D.
Oceanographer

Emergency Response Division
NOAA/NOS/ORR(206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115   (206) 526-6317   main reception

chris.bar...@noaa.gov

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] LateX Legend (again)

2010-02-10 Thread Jeffrey Blackburne
Ah, I didn't know there was a section of the rc file for legends. Adding

mpl.rcParams['font.family'] = 'serif'
mpl.rcParams['legend.fontsize'] = 'medium'

fixed things right up.

Thanks,
Jeff


On Feb 10, 2010, at 1:01 PM, phob...@geosyntec.com wrote:

 Jeff,

 I send all of my figures through LaTeX and don't have this problem.  
 The only thing I can think of is to check your matplotlibrc file  
 and make sure you've set the legend font to be the same size as the  
 other fonts.

 HTH,
 -paul h.

 -Original Message-
 From: Jeffrey Blackburne [mailto:je...@mit.edu]
 Sent: Wednesday, February 10, 2010 9:45 AM
 To: matplotlib-users@lists.sourceforge.net
 Subject: [Matplotlib-users] LateX Legend (again)

 Hi everyone,

 This has been brought up before, but not completely addressed. Is it
 possible to get the text in a Legend to match the rest of the text
 when using LateX? Here is an example of the problem:

 import matplotlib as mpl
 mpl.rcParams['text.usetex'] = True
 import matplotlib.pyplot as plt

 fig = plt.figure()
 ax = fig.add_subplot(111)
 ax.plot([1,5,2,3])   # random data
 plt.figlegend(ax.lines,[r'$\rm{label}$ label'],loc='upper left')
 plt.show()

 The first word is at least in a roman font, but the font size is
 wrong. I am using svn revision 8005 with gtkagg backend on linux, and
 confirm the behavior with 0.99.0 with tkagg on OS X.

 Thanks,
 Jeff


 - 
 
 -
 SOLARIS 10 is the OS for Data Centers - provides features such as  
 DTrace,
 Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
 http://p.sf.net/sfu/solaris-dev2dev
 ___
 Matplotlib-users mailing list
 Matplotlib-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/matplotlib-users


--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Plotting multiline graph with large dataset (6 lines, about 30, 000, 000 points total

2010-02-10 Thread Alan G Isaac
On 2/10/2010 1:17 PM, Oz Nahum wrote:
 This is really crazy ploting so many data point, after all the human
 eye can't separate all the data.


Following up on Oz's point ...
let's suppose that is 5M points for each of the 6 lines,
and that you will try to place them on a 5 inch wide axis.
That is 1M plotted points per horizontal inch.
Here is a list of typical monitor pixel densities:
http://en.wikipedia.org/wiki/List_of_displays_by_pixel_density

Alan Isaac


--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Sankey diagram

2010-02-10 Thread Ben Axelrod
Really cool plot.

Speaking of the 1.0 release, is there a target date set?  And if there is going 
to be another bug-fix release before 1.0, is there a target date for that?

Thanks,
-Ben 


-Original Message-
From: John Hunter [mailto:jdh2...@gmail.com] 
Sent: Wednesday, February 10, 2010 10:55 AM
To: Yannick Copin
Cc: matplotlib-users@lists.sourceforge.net
Subject: Re: [Matplotlib-users] Sankey diagram

2010/2/9 Yannick Copin yannick.co...@laposte.net:
 Hi List,

 I made a script to draw very simple (single-direction single-input 
 single-sided single-everything) Sankey diagrams (attached). I think I 
 could share, if it can be of any use...

Great -- I had never heard of a Sankey diagram but just took a look on 
wikipedia.  Very nice -- I contributed this to examples/api and it will show up 
on the web site and gallery after the mpl 1.0 release.

Thanks for sending it!
JDH

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace, 
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW 
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] Does Matplotlib have Image Processing?

2010-02-10 Thread Wayne Watson
See Subject. I see some fairly minimal IP in a image tutorial. I'm 
thinkig of things like a dark subtract.
-- 
Crime is way down. War is declining. And that's far from the good 
news. -- Steven Pinker (and other sources) Why is this true, but yet 
the media says otherwise? The media knows very well how to manipulate us 
(see limbic, emotion, $$). -- WTW

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Sankey diagram

2010-02-10 Thread John Hunter
On Wed, Feb 10, 2010 at 12:44 PM, Ben Axelrod baxel...@coroware.com wrote:
 Really cool plot.

 Speaking of the 1.0 release, is there a target date set?  And if there is 
 going to be another bug-fix release before 1.0, is there a target date for 
 that?


No target date yet, it has been on my wish list for a while.  I need
to get my OSX build environment going again after my powerbook died,
and then we need to work through the bugs on the sf site.  Once I get
the first part done, I can quickly do a bugfix release on the 99
branch, and then turn my attention to closing bugs on the HEAD.

Actively recruiting OSX release managers, so if someone wants to take
a crack at it see if you can build the binaries from svn HEAD using
release/osx/Makefile (and see README in same directory)

JDH

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] blit animation with patches

2010-02-10 Thread John Jameson
Hi - 
I am wondering how to animate using blit and patches. 
The code below was modified from one of the examples.
You will see that it shows (and moves) the rectangle just fine, but 
the circle never shows up.
best,
Jaron



import gtk, gobject
import matplotlib
matplotlib.use('GTKAgg') #Agg rendering to a GTK canvas (requires PyGTK)
import numpy as np
import matplotlib.pyplot as plt
from pylab import *
from matplotlib.patches import CirclePolygon

fig = plt.figure(figsize=(14,10))
ax = fig.add_subplot(111, autoscale_on=False )
canvas = fig.canvas

x_start = array([1.0, 2, 2, 1, 1])
y_start = array([1.0, 1, 2, 2, 1])

plt.axis([-1, 7, -0.5, 2.2])

def update_line():
global x, y
print update_line.cnt
if update_line.background is None:
update_line.background = canvas.copy_from_bbox(ax.bbox)
canvas.restore_region(update_line.background)

x = x_start + 0.012 * update_line.cnt 
y = y_start + 0.0001 * update_line.cnt 
line, = ax.plot(x, y, animated=True, lw=2)
ax.draw_artist(line)

x_cir = 1.0 + 0.001*update_line.cnt 
cir =  CirclePolygon((x_cir, 1), 0.3, animated=True,  resolution=6, lw=2
)
ax.draw_artist(cir)

canvas.blit(ax.bbox)

if update_line.cnt == 1:
gtk.mainquit()
raise SystemExit
update_line.cnt += 1
return True

update_line.cnt = 0
update_line.background = None

def start_anim(event):
gobject.idle_add(update_line)
canvas.mpl_disconnect(start_anim.cid)

start_anim.cid = canvas.mpl_connect('draw_event', start_anim)

plt.show()





--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] blit animation with patches

2010-02-10 Thread John Hunter
On Wed, Feb 10, 2010 at 12:39 PM, John Jameson
jjame...@altoresearch.com wrote:
 Hi -
 I am wondering how to animate using blit and patches.
 The code below was modified from one of the examples.
 You will see that it shows (and moves) the rectangle just fine, but
 the circle never shows up.

Artists must be added to the axes -- when you do line, = ax.plot(...)
the Line2D object is added t the Axes.  But you never add the circle
to the axes.  So do

  cir =  CirclePolygon((x_cir, 1), 0.3, animated=True,  resolution=6, lw=2)
  ax.add_patch(cir)

and then call

  ax.draw_artist(cir)

when you want to draw it.

JDH

 best,
 Jaron



 import gtk, gobject
 import matplotlib
 matplotlib.use('GTKAgg') #Agg rendering to a GTK canvas (requires PyGTK)
 import numpy as np
 import matplotlib.pyplot as plt
 from pylab import *
 from matplotlib.patches import CirclePolygon

 fig = plt.figure(figsize=(14,10))
 ax = fig.add_subplot(111, autoscale_on=False )
 canvas = fig.canvas

 x_start = array([1.0, 2, 2, 1, 1])
 y_start = array([1.0, 1, 2, 2, 1])

 plt.axis([-1, 7, -0.5, 2.2])

 def update_line():
    global x, y
    print update_line.cnt
    if update_line.background is None:
        update_line.background = canvas.copy_from_bbox(ax.bbox)
    canvas.restore_region(update_line.background)

    x = x_start + 0.012 * update_line.cnt
    y = y_start + 0.0001 * update_line.cnt
    line, = ax.plot(x, y, animated=True, lw=2)
    ax.draw_artist(line)

    x_cir = 1.0 + 0.001*update_line.cnt
    cir =  CirclePolygon((x_cir, 1), 0.3, animated=True,  resolution=6, lw=2
 )
    ax.draw_artist(cir)

    canvas.blit(ax.bbox)

    if update_line.cnt == 1:
        gtk.mainquit()
        raise SystemExit
    update_line.cnt += 1
    return True

 update_line.cnt = 0
 update_line.background = None

 def start_anim(event):
    gobject.idle_add(update_line)
    canvas.mpl_disconnect(start_anim.cid)

 start_anim.cid = canvas.mpl_connect('draw_event', start_anim)

 plt.show()





 --
 SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
 Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
 http://p.sf.net/sfu/solaris-dev2dev
 ___
 Matplotlib-users mailing list
 Matplotlib-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/matplotlib-users


--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Does Matplotlib have Image Processing?

2010-02-10 Thread Christopher Barker
Wayne Watson wrote:
 See Subject.

not really. Try:

http://www.scipy.org/doc/api_docs/SciPy.ndimage.html

for that. I think there are other IP libs wrapped for python use, too.

-Chris


-- 
Christopher Barker, Ph.D.
Oceanographer

Emergency Response Division
NOAA/NOS/ORR(206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115   (206) 526-6317   main reception

chris.bar...@noaa.gov

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] logarithmic plotting and the grid

2010-02-10 Thread K L
Whoop, the evil' mathwork even doesn't allow me to refer to a picture
on the site. ok, here's the effect I need (semilogy plotting with more
detailed grid)

http://i47.tinypic.com/95zihi.gif

Sorry for any inconvenience!

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] logarithmic plotting and the grid

2010-02-10 Thread Jae-Joon Lee
grid takes an optional argument which. Unfortunately this is not
properly documented with pylab.grid and Axes.grid.
But see

http://matplotlib.sourceforge.net/api/axis_api.html?highlight=grid#matplotlib.axis.Axis.grid

grid(True) # this turns on gridlines for major ticks
grid(True, which=minor) # this turns on gridlines for minor ticks.

-JJ


On Wed, Feb 10, 2010 at 6:18 PM, K L klu1...@gmail.com wrote:
 Hi,

 I want a more detailed grid for my logarithmic plotting. The following code:

 from pylab import *
 semilogy(range(10))
 grid(True)
 show()

 will produce output like this: http://i49.tinypic.com/2dpd3r.png

 Notice that the grid uniformly slices the image. And some ticks on the
 y-axis doesn't have grid lines. This is not want I want.

 Conversely, something like this is preferred:

 http://www.mathworks.com/access/helpdesk/help/toolbox/comm/ug/bert_mat_explot1.gif

 Thanks!

 --
 SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
 Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
 http://p.sf.net/sfu/solaris-dev2dev
 ___
 Matplotlib-users mailing list
 Matplotlib-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/matplotlib-users


--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Finding the Supposed MPL show() bug.

2010-02-10 Thread Wayne Watson
Foiled again. I clicked on the previous version, which has no MPL code 
in the same def.
The show() is where things go wrong though. The question now is where 
did the program go after the show()? Maybe it's time to put the 
interactive debugger into play, which I've barely used. I have used others.

On 2/10/2010 6:44 PM, Wayne Watson wrote:
 I chronicled some of my MPL problems here. It appeared that show() 
 could be the problem. The problem is apparently the difference between 
 running the program in IDLE and executing it from the folder (Maybe 
 there's a name for that?). There are only about 8 lines of MPL code to 
 the show() in a def. I inserted and moved a return down each line, 
 executing the program afterwords. It behaved as expected, no plot.  
 Once I removed the plot, I got the unexpected behavior. A video clip 
 not played. So off to a direct py file execution. It worked fully.

 What this amounts to is that we need to find a better way for users to 
 execute the program than through IDLE. Tomorrow  I'll pass this by the 
 original developer.

-- 
Crime is way down. War is declining. And that's far from the good 
news. -- Steven Pinker (and other sources) Why is this true, but yet 
the media says otherwise? The media knows very well how to manipulate us 
(see limbic, emotion, $$). -- WTW

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] Finding the Supposed MPL show() bug.

2010-02-10 Thread Wayne Watson
I chronicled some of my MPL problems here. It appeared that show() could 
be the problem. The problem is apparently the difference between running 
the program in IDLE and executing it from the folder (Maybe there's a 
name for that?). There are only about 8 lines of MPL code to the show() 
in a def. I inserted and moved a return down each line, executing the 
program afterwords. It behaved as expected, no plot.  Once I removed the 
plot, I got the unexpected behavior. A video clip not played. So off to 
a direct py file execution. It worked fully.

What this amounts to is that we need to find a better way for users to 
execute the program than through IDLE. Tomorrow  I'll pass this by the 
original developer.
-- 
Crime is way down. War is declining. And that's far from the good 
news. -- Steven Pinker (and other sources) Why is this true, but yet 
the media says otherwise? The media knows very well how to manipulate us 
(see limbic, emotion, $$). -- WTW

--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] GUI setSizePolicy

2010-02-10 Thread David Arnold
Hi,

I put these lines 


FigureCanvas.setSizePolicy(self,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Expanding)
FigureCanvas.updateGeometry(self)

in the following code, but I have not idea what they do as the GUI seems to 
behave equivalently (I can resize easily with the mouse) if they are removed.

Any thoughts?

D.

import sys
from PyQt4 import QtGui
import numpy as np
from matplotlib.figure import Figure
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.backends.backend_qt4agg import NavigationToolbar2QTAgg as 
NavigationToolbar

class Qt4MplCanvas(FigureCanvas):
def __init__(self):
self.fig = Figure()
self.axes = self.fig.add_subplot(111)
t = np.arange(0.0, 3.0, 0.01)
s = np.cos(2 * np.pi * t)
self.axes.plot(t, s)
FigureCanvas.__init__(self, self.fig)


FigureCanvas.setSizePolicy(self,QtGui.QSizePolicy.Expanding,QtGui.QSizePolicy.Expanding)
FigureCanvas.updateGeometry(self)

qApp = QtGui.QApplication(sys.argv)
fc = Qt4MplCanvas()
fc.show()
sys.exit(qApp.exec_())--
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users