如何制作电影(与matlab相关)?

时间:2012-01-19 16:18:41

标签: python matlab matplotlib

我在matlab中有这个代码(在一个函数中):

...
m = size(myList, 3);
for k = 1:m
    g = myList(:, :, k);
    image(g + 1)
    axis off
    axis square
    M(k) = getframe;
end;

和另一个文件(另一个函数):

...
M = showGraphs(grids)
movie(M, 1)

我想在matplotlib中制作电影。到现在为止,我做了(第一段代码):

m=sc.shape(myList,3)
for k in range(m):
    g=myList[:,:,k]
    plt.axis("False")
    plt.imshow(g+1) -->> i don't know if it's right

我不知道如何处理M(k)=getframe,然后使用movie(M,1)

我该怎么办?因为我对matplotlib中的方式感到困惑。

----修订------------------------------

我做了:

 n=sc.shape(data)[2]
    ims=[]
    for i in range(n):
        mydata=data[:,:,i]
        im=plt.imshow(mydata,cmap=plt.get_cmap('jet'))
        ims.append([im])
    return ims

然后:

fig=plt.gcf()
ani=ArtistAnimation(fig,result,interval=10,repeat=False)

1 个答案:

答案 0 :(得分:1)

有很多不同的方法,请参阅动画示例:http://matplotlib.sourceforge.net/examples/animation/index.html