Python
 Computer >> コンピューター >  >> プログラミング >> Python

Matplotlibで閉じた図(Figure)を再表示する方法

Matplotlibでは、一度閉じた図(Figure)をそのままの状態で再表示することはできませんが、新しいCanvas Managerを作成し、以前の図を新しいCanvasに割り当てることで、閉じた図を再度表示することが可能です。

手順

  • 図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。
  • 新しい図を作成するか、既存の図をアクティブにします。
  • NumPyを使用してxとyのデータポイントを作成します。
  • plot()メソッドを使ってxとyのデータポイントをプロットします。
  • プロットした現在の図をclose()メソッドで閉じます。
  • 閉じた図を、新しく作成したCanvasのfigure属性に格納します。
  • その図を含むCanvasを設定します。
  • show()メソッドを使って図を表示します。

コード例

import numpy as np
from matplotlib import pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

fig = plt.figure()
x = np.linspace(-10, 10, 100)
y = np.sin(x)

plt.plot(x, y)
plt.close(fig)

new_fig = plt.figure()
new_manager = new_fig.canvas.manager
new_manager.canvas.figure = fig
fig.set_canvas(new_manager.canvas)

plt.show()

出力結果

上記のコードを実行すると、一度閉じた正弦波のグラフが新しいCanvas上に再表示されます。この手法は、バックエンドによっては動作しない場合があるため、使用している環境での動作確認をおすすめします。

Matplotlibで閉じた図(Figure)を再表示する方法Matplotlibで閉じた図(Figure)を再表示する方法

  1. MatplotlibでRectangle(長方形)に色を設定する方法

    Matplotlibで長方形(Rectangle)に色を設定するには、以下の手順に従います。手順figure() メソッドを使用して、新しい図(Figure)を作成するか、既存の図をアクティブにします。add_subplot() メソッドを使用して、サブプロット構成の一部として図に ~.axes.Axes を追加します。長方形は、アンカーポイント(基準座標)と幅・高さを指定することで定義できます。作成したRectangleパッチを add_patch() でプロットに追加します。xlim() および ylim() メソッドを使用して、x軸とy軸の表示範囲を設定します。図を表示するには、show

  2. Matplotlibのグラフをフルスクリーンで表示する方法

    Matplotlibで作成したグラフをフルスクリーン(全画面)で表示したい場合、full_screen_toggle()メソッドを使用すると簡単に実現できます。このメソッドは、現在開いているフィギュアウィンドウを全画面モードに切り替える機能を持ちます。 手順 figure()メソッドを使って、新しいフィギュアを作成するか、既存のフィギュアをアクティブにします。 2つのリストを渡してplot()メソッドを呼び出し、折れ線グラフを描画します。 get_current_fig_manager()メソッドで、現在のフィギュアのマネージャー(figure manager)を取得します。 取得したマネー