matplotlibグラフの境界線サイズを制限するにはどうすればよいですか?
-
05-07-2019 - |
質問
かなり大きなグラフを作成していますが、境界線の空白はデータで使用するのに適したピクセルを多く占有しています。グラフが大きくなると境界線も大きくなるようです。
ここに私のグラフ作成コードの基本を示します:
import matplotlib
from pylab import figure
fig = figure()
ax = fig.add_subplot(111)
ax.plot_date((dates, dates), (highs, lows), '-', color='black')
ax.plot_date(dates, closes, '-', marker='_', color='black')
ax.set_title('Title')
ax.grid(True)
fig.set_figheight(96)
fig.set_figwidth(24)
境界線のサイズを小さくする方法はありますか?たぶん、境界を一定の2インチ程度に保つことができるような設定でしょうか?
解決
1つのサブプロットを使用しているように見えるため、 add_subplot
をスキップして、 add_axes
。これにより、Axesのサイズを(図形を基準とした座標で)指定できるので、図形内で必要な大きさにすることができます。あなたの場合、これはあなたのコードが次のように見えることを意味します
import matplotlib.pyplot as plt
fig = plt.figure()
# add_axes takes [left, bottom, width, height]
border_width = 0.05
ax_size = [0+border_width, 0+border_width,
1-2*border_width, 1-2*border-width]
ax = fig.add_axes(ax_size)
ax.plot_date((dates, dates), (highs, lows), '-', color='black')
ax.plot_date(dates, closes, '-', marker='_', color='black')
ax.set_title('Title')
ax.grid(True)
fig.set_figheight(96)
fig.set_figwidth(24)
必要に応じて、 figure()
呼び出しで直接パラメーターを set_figheight
/ set_figwidth
に入れることもできます。
他のヒント
subplots_adjust
をお試しくださいa> API:
subplots_adjust(* args、** kwargs)
fig.subplots_adjust(left =なし、bottom =なし、right =なし、wspace =なし、hspace =なし)
SubplotParamsをkwargs(デフォルトではrcでNoneに設定)で更新し、サブプロットの場所を更新します
所属していません StackOverflow