3

サブプロットにプロットしたい2つの図があります。

fig = plt.figure()
ax1 = fig.add_subplot(1,2,1)
ax2 = fig.add_subplot(1,2,2)

ax1に、ポイントを追加するアニメーション(散布図)が表示されると仮定します。次に、Ax2はこれらのポイントをメッシュグリッドにビニングし、密度を表示します。

サブプロット1にアニメーションを表示し、完了時に密度画像をサブプロット2に追加できますか?

4

1 に答える 1

2

これは可能であるはずです。を見てください。前の質問を確認することもできます。

matplotlibとpyplotを使用した2D座標のシンプルなアニメーション

以下はサンプル実装です。2番目のプロットは、最初のプロットがレンダリングを停止するまで非表示になります。

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation

def update_line(num, data, line, img):
    line.set_data(data[...,:num])
    if num == 24:
        img.set_visible(True)
    return line, img

fig1 = plt.figure()

data = np.random.rand(2, 25)
ax1=plt.subplot(211)
l, = plt.plot([], [], 'rx')
plt.xlim(0, 1)
plt.ylim(0, 1)
plt.xlabel('x')
plt.title('test')
ax2=plt.subplot(212)
nhist, xedges, yedges = np.histogram2d(data[0,:], data[1,:])
img = plt.imshow(nhist, aspect='auto', origin='lower')
img.set_visible(False)
line_ani = animation.FuncAnimation(fig1, update_line, 25, 
                                   fargs=(data, l, img),
                                   interval=50, blit=True)
line_ani.repeat = False
plt.show()
于 2012-11-13T18:10:07.833 に答える