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

開いているすべてのMatplotlib図を一度に1つのファイルに保存する


開いているすべてのMatplotlibフィギュアを一度に1つのファイルに保存するには、次の手順を実行します-

  • 図のサイズを設定し、サブプロット間およびサブプロットの周囲のパディングを調整します。
  • 新しいフィギュアを作成する(fig1) または、 figure()を使用して既存のフィギュアをアクティブにします メソッド。
  • plot()を使用して最初の行をプロットします メソッド。
  • 新しいフィギュアを作成する(fig2) または、 figure()を使用して既存のフィギュアをアクティブにします メソッド。
  • plot()を使用して2行目をプロットします メソッド。
  • 変数、ファイル名を初期化します 、PDFファイルを作成します。
  • ユーザー定義関数save_multi_image、を作成します それを呼び出して、開いているすべてのmatplotlib図を一度に1つのファイルに保存します。新しいPdfPagesを作成します オブジェクト、pp。
  • 開いている数字の数を取得します。
  • 開いた図を反復処理してファイルに保存します。
  • 図を表示するには、 show()を使用します メソッド。

from matplotlib import pyplot as plt
from matplotlib.backends.backend_pdf import PdfPages

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

fig1 = plt.figure()
plt.plot([2, 1, 7, 1, 2], color='red', lw=5)

fig2 = plt.figure()
plt.plot([3, 5, 1, 5, 3], color='green', lw=5)

def save_multi_image(filename):
   pp = PdfPages(filename)
   fig_nums = plt.get_fignums()
   figs = [plt.figure(n) for n in fig_nums]
   for fig in figs:
      fig.savefig(pp, format='pdf')
   pp.close()

filename = "multi.pdf"
save_multi_image(filename)

出力

コードを実行すると、次の2つのプロットがPDFファイルとして保存されます(multi.pdf) プロジェクトディレクトリにあります。

開いているすべてのMatplotlib図を一度に1つのファイルに保存する 開いているすべてのMatplotlib図を一度に1つのファイルに保存する


  1. Matplotlibを使用してプロット上のグリッドのサイズを定義します

    プロット上のグリッドのサイズを定義するには、次の手順を実行できます- figure()を使用して、新しいフィギュアを作成するか、既存のフィギュアをアクティブにします メソッド。 サブプロット配置の一部として、図に軸を追加します。 入力リストを使用して曲線をプロットします。 xとyのマージンを0にします。 Xグリッドを設定するために、入力ティックポイントを渡すことができます。 現在の線のスタイルでグリッド線をレイアウトするには、 grid(True)を使用します メソッド。 図を表示するには、 show()を使用します メソッド。 例 from m

  2. Matplotlibを使用してiPythonノートブックからファイルとして図を保存します

    図をiPythonからファイルとして保存するには、次の手順を実行できます- 新しいフィギュアを作成するか、既存のフィギュアをアクティブにします。 add_axes()を使用して図に軸を追加します メソッド。 指定されたリストをプロットします。 savefig()を使用してプロットを保存します メソッド。 例 from matplotlib import pyplot as plt plt.rcParams["figure.figsize"] = [7.00, 3.50] plt.rcParams["figure.autolayout"] =