python 来自 pandas 数据框的网格值
python meshgrid values from pandas dataframe
已解决
我有一个像这样的 pandas DataFrame
X Y Z Vx Vy Vz
0 -17.5 10.0 2.5 0.037132 -4.021866e-02 -0.002117
1 -17.5 12.5 0.0 0.021691 -3.838874e-02 -0.000651
3 -17.5 0.0 12.5 0.063864 7.724853e-07 -0.023265
7 -17.5 2.5 2.5 0.072648 -1.244435e-02 -0.002749
16 -17.5 5.0 0.0 0.064299 -2.709658e-02 -0.000972
我想绘制一个 3D 箭袋图,其中 X、Y、Z 是笛卡尔坐标,Vx、Vy、Vz 是我的矢量场的分量。
我以这种方式为 x、y、z 制作了网格
x,y,z = np.meshgrid(dataPM[dataPM.columns[0]],dataPM[dataPM.columns[1]],dataPM[dataPM.columns[2]])
但我正在努力制作一个函数来为 Vx、Vy、Vz 创建相应的网格。
有什么想法吗?
非常感谢您的帮助。
解决方案
事实证明,如果你已经有了一个包含所有 x、y、z、Vx、Vy、Vz 值的 pandas DataFrame,你可以将它们传递给箭袋,这是我的错,但和往常一样尝试越多,学到的越多。
所以最后的代码是:
from mpl_toolkits.mplot3d import axes3d
fig = plt.figure(figsize=(16,9))
ax = fig.gca(projection='3d')
ax.quiver(dataPM[dataPM.columns[0]], dataPM[dataPM.columns[1]], dataPM[dataPM.columns[2]],dataPM[dataPM.columns[3]],dataPM[dataPM.columns[4]],dataPM[dataPM.columns[5]])
plt.show()
然后如果你想让它变得更好,你可以玩颜色等等。
感谢大家
已解决
我有一个像这样的 pandas DataFrame
X Y Z Vx Vy Vz
0 -17.5 10.0 2.5 0.037132 -4.021866e-02 -0.002117
1 -17.5 12.5 0.0 0.021691 -3.838874e-02 -0.000651
3 -17.5 0.0 12.5 0.063864 7.724853e-07 -0.023265
7 -17.5 2.5 2.5 0.072648 -1.244435e-02 -0.002749
16 -17.5 5.0 0.0 0.064299 -2.709658e-02 -0.000972
我想绘制一个 3D 箭袋图,其中 X、Y、Z 是笛卡尔坐标,Vx、Vy、Vz 是我的矢量场的分量。 我以这种方式为 x、y、z 制作了网格
x,y,z = np.meshgrid(dataPM[dataPM.columns[0]],dataPM[dataPM.columns[1]],dataPM[dataPM.columns[2]])
但我正在努力制作一个函数来为 Vx、Vy、Vz 创建相应的网格。
有什么想法吗?
非常感谢您的帮助。
解决方案
事实证明,如果你已经有了一个包含所有 x、y、z、Vx、Vy、Vz 值的 pandas DataFrame,你可以将它们传递给箭袋,这是我的错,但和往常一样尝试越多,学到的越多。
所以最后的代码是:
from mpl_toolkits.mplot3d import axes3d
fig = plt.figure(figsize=(16,9))
ax = fig.gca(projection='3d')
ax.quiver(dataPM[dataPM.columns[0]], dataPM[dataPM.columns[1]], dataPM[dataPM.columns[2]],dataPM[dataPM.columns[3]],dataPM[dataPM.columns[4]],dataPM[dataPM.columns[5]])
plt.show()
然后如果你想让它变得更好,你可以玩颜色等等。
感谢大家