> Hi Belinda,
>
> I've been playing with 3D plots and scatter plots in the past few days
> and I've been able to get them working. You should be able to pass in
> a c=<color> parameter as you would for a normal 2d scatter plot. I've
> been doing this and it's working for me.

Interesting.

I'm on Mac OS X 4.8.9, running Python 2.4.4, using Matplotlib 0.87.7  
w/TkAgg (I might be using Wx, but would have to get a problem w/my  
machine's and all the students' lab machines wx libraries updated).

When I try using the c='r' parameter, I run into problems. I also  
tried c='red'. One big problem for me is that which kwargs can be  
used where and what values they can take on is not well documented.

For instance, in plot3d (as opposed to plot3D) you can pass the  
typical Matplotlib 'r.-' string and it just works. But in  
plot_wireframe, for example, it appears you must use different kwargs  
(for instance, linestyle='solid' and color='<some RGB value>'). I am  
not sure about these notions, b/c I've had to deduce them from the  
code and various google-based snippets.

That's why I'm asking for more guidance about the various kwarg usages.

Is there any good place to find more cohesive info online? The most  
useful place I could find seemed to be in matplotlib's  
collections.py, an __init__ function's documentation (that's where I  
deduced, for instance, the linestyle and RGB color info). If there  
isn't such a place, someone should probably modify the matplotlib 3d  
cookbook. I'd be willing to do that but I'd first need to have a  
better understanding about the various functions' kwargs :-).

I'll append a case I used to generate an error, as well as the error  
reporting below. I'm also not quite sure how to use the errors that  
are reported to help me track down where the problems might be, so if  
anyone has some advice on that, it might help me better help myself  
in the future.

As always, thx,

--b


Example Code:
-------------
import copy
import pylab as P
import matplotlib.axes3d as P3
def test() :
     [X,Y] = P.meshgrid(P.linspace(-3,3,7),P.linspace(-3,3,7))
     Z = copy.deepcopy(X)
     Z1 = copy.deepcopy(X)
     for i in xrange(len(X)) :
         for j in xrange(len(X[0])) :
             Z[i][j] = X[i][j]*Y[i][j]
             Z1[i][j] = X[i][j]*Y[i][j] - 5
     P.close('all')
     fig = P.figure()
     ax = P3.Axes3D(fig)
     ax.Plot3D(ravel(X),ravel(Y),ravel(Z),c='r')

In [213]: T.test()
------------------------------------------------------------------------ 
---
exceptions.AttributeError                            Traceback (most  
recent call last)

/Users/bthom/belinda/mills/aicourse/material/week12/lec/examples/ 
<ipython console>

/Users/bthom/belinda/mills/aicourse/material/week12/lec/examples/ 
threeDa.py in test()
      11             Z1[i][j] = X[i][j]*Y[i][j] - 5
      12     P.close('all')
      13     fig = P.figure()
      14     ax = P3.Axes3D(fig)
---> 15     ax.Plot3D(ravel(X),ravel(Y),ravel(Z),c='red')

/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/site- 
packages/matplotlib/axes3d.py in __getattr__(self, k)
     660
     661     def __getattr__(self, k):
--> 662         return getattr(self.wrapped,k)
     663
     664     def __setattr__(self, k,v):

AttributeError: Axes3DI instance has no attribute 'Plot3D'
 > /Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4/ 
site-packages/matplotlib/axes3d.py(662)__getattr__()
     661     def __getattr__(self, k):
--> 662         return getattr(self.wrapped,k)
     663

ipdb> 

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Matplotlib-users mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to