在matplotlib python

时间:2018-12-22 09:22:38

标签: python python-3.x matplotlib

当我使用2D绘图时,我已经找到了解决此问题的方法,但是我正在使用3D绘图。当前拥有的代码是:

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

x = np.array([0,1,2,3,4,5,6,7,8,9])
y = np.array([9,8,7,6,5,4,3,2,1,0])
z = np.array([0,9,1,8,2,7,3,6,4,5])

fig=plt.figure()

ax=fig.gca(projection='3d')

ax.scatter(x,y,z,zdir='z',s=20,c=None, depthshade=True)`enter code here`

mplcursors.cursor(hover=True)

plt.show()

我通过该程序获取坐标,但是如果我旋转图形,坐标会改变。我怎样才能解决这个问题?我认为最简单的方法是以某种方式从我悬停的那点起调用坐标。但是我该怎么办?

1 个答案:

答案 0 :(得分:0)

我已修复它:

zdirs = (None, 'x', 'y', 'z', (1, 1, 0), (1, 1, 1))

for xc, yc, zc in zip(x, y, z):
    label = '(%d, %d, %d)' % (xc, yc, zc)
    ax.text(xc, yc, zc, label)

如果添加了这段代码,您将在点旁边显示坐标。