import matplotlib.pyplot as plt # スタイルを設定 plt.style.use(‘ggplot’) # データを定義 x = [1, 2, 3, 4, 5] y = [2, 3, 5, 7, 11] # サブプロットを作成 fig, ax = plt.subplots() # 折れ線グラフをプロット ax.plot(x, y, marker=’o’, linestyle=’-‘, color=’b’, label=’Data’) # サブプロットにタイトルと軸ラベルを追加 ax.set_title(‘Sample Line Plot’) ax.set_xlabel(‘X-axis’) ax.set_ylabel(‘Y-axis’) # 凡例を表示 ax.legend() # グリッドを表示 ax.grid(True) # グラフを表示 plt.show() plt.savefig(“tmp_plot.jpg”) これじゃだめ?エクスポートされるけど、データが表示されない

plt.show()を呼び出した後にplt.savefig()を使っているため、plt.show()の後にplt.savefig()を移動する必要があります。plt.show()を呼び出すと、グラフが表示され、その後のコードは実行されないため、グラフが表示される前にplt.savefig()を呼び出すと、空のグラフが保存されます。

以下は修正されたコードです。

python
import matplotlib.pyplot as plt # スタイルを設定 plt.style.use('ggplot') # データを定義 x = [1, 2, 3, 4, 5] y = [2, 3, 5, 7, 11] # サブプロットを作成 fig, ax = plt.subplots() # 折れ線グラフをプロット ax.plot(x, y, marker='o', linestyle='-', color='b', label='Data') # サブプロットにタイトルと軸ラベルを追加 ax.set_title('Sample Line Plot') ax.set_xlabel('X-axis') ax.set_ylabel('Y-axis') # 凡例を表示 ax.legend() # グリッドを表示 ax.grid(True) # グラフを表示 plt.show() # グラフを保存 plt.savefig("tmp_plot.jpg")

このように修正することで、グラフが表示された後に画像が保存されるようになります。

未分類

Posted by ぼっち