Python-在mplot3D中设置zlim

2024-04-18 04:09:57 发布

您现在位置:Python中文网/ 问答频道 /正文

mpl.rcParams['legend.fontsize'] = 10

fig1 = plt.figure()
ax = fig1.gca(projection='3d') 

ax.plot(tab_C[0], tab_C[1], zs=0, zdir='z', label = "Projection de la trajectoire de C", color='k')
ax.plot(tab_M[0], tab_M[1], zs=0, zdir='z', label = "Projection de la trajectoire de M", color='r')

for i in range(0,len(tab_t)):
    ax.plot(tab_C[0][i:i+2], tab_C[1][i:i+2], tab_C[2][i:i+2], color=plt.cm.rainbow(255*i/len(tab_t)))
    ax.plot(tab_M[0][i:i+2], tab_M[1][i:i+2], tab_M[2][i:i+2], color=plt.cm.rainbow(255*i/len(tab_t)))

ax.legend()

ax.set_xlabel('I')
ax.set_ylabel('J')
ax.set_zlabel('K')

m = cm.ScalarMappable(cmap=cm.rainbow)
m.set_array(tab_t)

plt.colorbar(m)

我有我的代码

My plot

我的问题是 -我想设置颜色条的标签,但是ScalarMappale没有设置标签的方法() -我想设置zmin=0以清楚地看到平面图上的投影(0xy),但这里的zmin似乎是0.05,当我这样做时 最大设定值(底部=0) 它又回来了

Traceback (most recent call last):
  File "code.py", line 117, in <module>
    ax.set_zlim(bottom=0) 
  File "/usr/lib/pymodules/python2.7/mpl_toolkits/mplot3d/axes3d.py", line 515, in set_zlim3d
    lims = self._determine_lims(*args, **kwargs)
  File "/usr/lib/pymodules/python2.7/mpl_toolkits/mplot3d/axes3d.py", line 476, in _determine_lims
    xmin -= 0.05
TypeError: unsupported operand type(s) for -=: 'NoneType' and 'float'

有什么办法解决我的问题吗?


Tags: inpylenplotlinecmdeplt