2013-03-23 64 views
2

我有一些在2d空间和随着时间变化的矢量字段。通常,人们可以将矢量场的演变可视化为2D电影,其中所有颤抖的大小和角度随时间变化。为了明确,目前我有U和V,每个都有形状(x,y,t),其中dims 0和1是空间坐标,t是特定的时间片。我可以将矢量场可视化为特定时间:matplotlib.pyplot.quiver(U[:,:,i], V[:,:,i])其中i是特定时间索引。目前我可以在遍历所有i的for-loop中看到这种演变。Matplotlib:随着时间的推移叠加多个2d颤抖图

但是,我想在单个二维图上可视化每个颤抖图。为此,我想将每个索引i指定为与给定色彩映射不同的颜色。因此,来自特定时间点的所有颤抖呈现为单一颜色。

有人可以提出一种方法吗?

预先感谢您!

回答

6

你可以做线沿线的东西:

from __future__ import division 
import numpy as np 
import matplotlib.pyplot as plt 

U = np.random.rand(10, 10, 10) - 0.5 
V = np.random.rand(10, 10, 10) - 0.5 
cmap = plt.cm.jet 
time_samples = U.shape[-1] 
for t in xrange(time_samples): 
    plt.quiver(U[..., t], V[..., t], color=cmap(j/time_samples)) 
plt.show() 

enter image description here

+0

谢谢!这非常有帮助。 – Ankit 2013-03-24 12:51:49

+0

@Ankit如果答案是有帮助的,考虑upvoting或接受它。 – Jaime 2013-03-24 16:12:59

相关问题