【发布时间】:2018-08-07 07:13:33
【问题描述】:
我正在编写一个用于在 matplotlib 中制作 3D 散点图的界面,并且我想从 python 脚本访问数据。对于二维散点图,我知道过程是:
import numpy as np
from matplotlib import pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
h = ax.scatter(x,y,c=c,s=15,vmin=0,vmax=1,cmap='hot')
data = h.get_offsets()
通过上面的代码,我知道数据将是一个(N,2) numpy 数组,其中填充了我的(x,y) 数据。当我尝试对 3D 数据执行相同的操作时:
import numpy as np
from matplotlib import pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure()
ax = Axes3D(fig)
h = ax.scatter(x,y,z,c=c,s=15,cmap='hot',vmin=0,vmax=1)
data = h.get_offsets()
生成的data 变量仍然是(N,2) numpy 数组,而不是(N,3) numpy 数组。 data 的内容不再匹配我的任何输入数据;我假设data 填充了我的 3D 数据的 2D 投影,但我真的很想访问用于生成散点图的 3D 数据。这可能吗?
【问题讨论】:
标签: python matplotlib