我需要关于如何从csv更新3D箭袋头部值的帮助 目前,我有一个csv文件,其中包含3列x、y、z轴,我想在python代码中将其更新为u、v、w变量
我面临的问题是,结果动画无法正确设置动画。这是一张静态图片,如下所示
https://i.stack.imgur.com/Os8FX.png
我确信我一定是把如何迭代/读取csv数据文件搞砸了
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from matplotlib.animation import FuncAnimation
fig, ax = plt.subplots(subplot_kw=dict(projection="3d"))
# Reading the data from a CSV file using pandas
repo = pd.read_csv('test.csv',sep=',',header=0)
data = np.array((repo['x'].values, repo['y'].values, repo['z'].values))
def get_arrow():
x = 0
y = 0
z = 0
u = data[0][:]
v = data[1][:]
w = data[2][:]
return x,y,z,u,v,w
quiver = ax.quiver(0,0,0,0,0,0)
ax.set_xlim(-.5, .5)
ax.set_ylim(-.5, .5)
ax.set_zlim(-.5, .5)
def update(theta):
global quiver
quiver.remove()
quiver = ax.quiver(*get_arrow())
ani = FuncAnimation(fig, update, frames=np.linspace(0,2*np.pi,200), interval=50)
plt.show()
我不确定箭头的行为,因为数据未知,但我尝试使用示例数据创建它们。我还提供了一个用于GIF图像和jupytert的库,因此您可以修改它以适应您的环境
相关问题 更多 >
编程相关推荐