Hi:

I'm trying to get a semilog 3D plot. I want to plot several 2D time series
lines, with the third axis being on a log scale. I am trying to set an axis
to log using ax.set_yscale('log'), but am getting errors. Is this possible?

I keep getting numpy errors when I try:
raise MaskError, 'Cannot convert masked element to a Python int.'
numpy.ma.core.MaskError: Cannot convert masked element to a Python int.

My attempt:

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np

fig = plt.figure()
#ax = fig.gca()
ax = Axes3D(fig)

colors = ('r', 'g', 'b', 'k')
zd = (0., 1., 2., 3.)
T2 = (0.9, .8, .7, .6)
ic = 1

for ic in xrange(len(colors)):
    x = np.arange(0.05,1,.005)
    z = np.exp(-x/T2[ic]) + np.random.normal(0, .05, len(x))
    y = np.exp(zd[ic])*np.ones(len(x))
    ax.plot(x,y,z)

# Error if uncommented
#ax.set_yscale('log')
plt.show()

Thanks for any insight.
------------------------------------------------------------------------------
Return on Information:
Google Enterprise Search pays you back
Get the facts.
http://p.sf.net/sfu/google-dev2dev
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to