画像解析に取り組んでおり、2D アニメーションの進行に合わせて 1D プロットが更新されるように、2D データの時系列と単一ピクセルでの時系列のプロットを含む最終結果のアニメーションを作成したいと考えています。次に、それらをサブプロットに並べて設定します。以下のリンクには、理想的にはアニメーション化される最終結果の画像があります。
エラーが発生し続けます: AttributeError: 'list' object has no attribute 'set_visible'. 私は(あなたがするように)それをグーグルで検索し、 1人の男のアヒルがset_visible 属性を設定するコード。残念ながら、プロット コマンドにはそのような属性がないようで、どうすればアニメーションを作成できるか途方に暮れています。以下の最小限の作業例 (コメント アウト) にモンキー パッチを含めました。また、コードを実行しようとしているすべての人に有効な 2 番目の 'im2' もコメント アウトされています。明らかに、2 つの 2D プロット アニメーションが表示されます。最小限の作業例は次のとおりです。
#!/usr/bin/env python
import matplotlib.pyplot as plt
import matplotlib.animation as anim
import numpy as np
import types
#create image with format (time,x,y)
image = np.random.rand(10,10,10)
image2 = np.random.rand(10,10,10)
#setup figure
fig = plt.figure()
ax1=fig.add_subplot(1,2,1)
ax2=fig.add_subplot(1,2,2)
#set up list of images for animation
ims=[]
for time in xrange(np.shape(image)[1]):
im = ax1.imshow(image[time,:,:])
# im2 = ax2.imshow(image2[time,:,:])
im2 = ax2.plot(image[0:time,5,5])
# def setvisible(self,vis):
# for c in self.collections: c.set_visible(vis)
# im2.set_visible = types.MethodType(setvisible,im2,None)
# im2.axes = plt.gca()
ims.append([im, im2])
#run animation
ani = anim.ArtistAnimation(fig,ims, interval=50,blit=False)
plt.show()
また、1D データが抽出されているピクセルを強調表示したり、ピクセルから右端のサブプロットまで線を引いて何らかの方法で「接続」したりするクールな方法を誰かが知っているかどうかについても興味がありました。
エイドリアン