実現したいこと・前提
・X軸のレイアウトについて
matplotlibのsubplotを用いて、12行2列の時系列グラフを作成しております。
それぞれ時系列グラフなので、X軸には日付が出力されます。
YYYY-MM-ddと表示されるのですが、重なってしまい見づらくなってしまうので改善したいです。

・出力サイズについて
12行2列のグラフサイズはそれぞれ、figsize = (15, 50)になっています。
それをsavefigでPDF出力し、更にそれを紙(A4)で印刷します。
それが試行錯誤しても良い感じ?に印刷することができません。
具体的には、1列目のY軸ラベルが表示されなくなったり、
一番下に表示される日付が表示されなくなったりしてしまいます。
これらをある程度、綺麗に印刷できるようにご教示頂きたいです。
宜しくお願い致します。
現在のソースコード
Python
1fig = plt.figure(figsize = (15, 50), tight_layout=True) # グラフサイズ(幅、高さ)2for col in range(df_1.shape[1]):3 plt.subplot(12, 2, col+1)4 plt.plot(df_1.iloc[:, col], marker="o", color="lime")5 # plt.title("No." + str(col)) # 列Noをタイトル6 plt.ticklabel_format(style="plain", axis="y", scilimits=(0, 0)) # eを使わない表現7 plt.gca().get_yaxis().set_major_formatter(ticker.FuncFormatter(lambda v,p: f'{int(v):,d}')) # 3桁ごとにカンマで区切る8 plt.grid()9 10 # 列毎(各グラフ)の個別設定11 for i in range(len(columns)):12 if col == i:13 plt.title(columns[i])14 plt.legend([columns[i]])15 16plt.savefig(str_today + "sample.pdf")
試したこと
figsizeの変更、tighe_layoutをやめて個別に設定
補足情報(FW/ツールのバージョンなど)
matplotlib 3.6.3

0 コメント