-1

私は、スクリプトの実行時に複数の図を画面に表示する (およびそれらを保存する) 必要がある課題に取り組んでいます。画面に画像を表示するには、 imshow と show の両方を使用する必要があります。これは問題なく動作しますが、show() はスクリプトごとに 1 回だけ使用する必要があることを読みました。画像を表示する別の方法はありますか?保存された画像ファイルも、空白の 800x600 の白い画像として保存されます。これが私のコードです:

img = np.zeros((100,100))
plt.figure(0)
plt.imshow(img)
plt.show()
plt.savefig("images/img.png")
plt.close(0)

他の各図は同じ構文に従っています (明らかに、異なる画像名と新しい図番号を使用します。

ありがとう!

4

1 に答える 1

1

一般に、画面に表示してファイルに保存するフィギュアごとに新しいフィギュアオブジェクトを作成するために使用するアプローチfigure()は、これが聞きたいものである場合は問題ありません。

この点であなたの実際の質問が何であるかはわかりませんので、他に知りたいことがあれば、質問を編集することを強くお勧めします。

2番目の問題について:使用中のバックエンドによってはshow()、図のオブジェクトを(閉じるときに)破壊する可能性があります。そのため、通常は最初savefig()に、次にshow()これはここに文書化されています。

于 2013-03-07T11:20:40.347 に答える