Python 使用matplotlib、pylab的列表三维条形图
我有三张单子Python 使用matplotlib、pylab的列表三维条形图,python,matplotlib,plot,Python,Matplotlib,Plot,我有三张单子 def main(): x = np.arange(0.0,256.0) y = np.arange(0.0,256.0) Y,X = np.meshgrid(x,y) Z = wron(X,Y) for i in range(0,256): Z[i][0]=0 def wron(X,Y): t=X/Y return(abs(t*(t-1))) 如何获得X、Y和Z列表的三维条形图。其中X
def main():
x = np.arange(0.0,256.0)
y = np.arange(0.0,256.0)
Y,X = np.meshgrid(x,y)
Z = wron(X,Y)
for i in range(0,256):
Z[i][0]=0
def wron(X,Y):
t=X/Y
return(abs(t*(t-1)))
如何获得X、Y和Z列表的三维条形图。其中X,Y,Z对应于X,Y,Z轴
我尝试了以下代码
from pylab import *
import numpy
from mpl_toolkits.mplot3d import Axes3D
def main():
fig=figure()
ax=Axes3D(fig)
x=np.arange(0.0,256.0)
y=np.arange(0.0,256.0)
Y,X= np.meshgrid(x,y)
Z=wron(X,Y)
for i in range(0,256):
Z[i][0]=0
ax.bar(X,Y,zs=Z,zdir='y')
show()
def wron(X,Y):
t=X/Y
return(abs(t*(t-1)))
if __name__=='__main__':
main()
但我得到了这个错误:
patches = Axes.bar(self, left, height, *args, **kwargs)
File "/usr/lib/python3/dist-packages/matplotlib/axes.py", line 4887, in bar
if h<0:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
patches=Axes.bar(self、left、height、*args、**kwargs)
文件“/usr/lib/python3/dist packages/matplotlib/axes.py”,第4887行,条形图
如果查看mpl\u工具包.mplot3d.Axes3D
。请参阅