2015-07-21 61 views
3

我在使用熊貓(matplotlib在後臺)創建一些直方圖。軸蜱的標籤被截斷爲pandas/matplotlib圖

我大致做這樣的:

output = StringIO.StringIO() 
plot_canvas = matplotlib.pyplot.figure() 
ax = plot_canvas.add_subplot(1, 1, 1) 

series = df[key].value_counts()[:nums] 
fig = series.plot(ax=ax, kind="bar", colormap="Blues", 
        legend=False, 
        stacked=False, 
        title="Numbers of %s" % key, 
        grid=True).get_figure() 
fig.savefig(output, format="png") 
o_data = output.getvalue() 
output.close() 
image_data = o_data.encode("base64") 
image_uri = 'data:image/png;base64,%s' % image_data 

我的問題是,該X數據名稱(串),這是相當長的,哪些是與在PNG截斷這些默認設置。所以我想知道,如何在繪圖中移動圖形,以便在圖形下面獲得更多的自由空間。

enter image description here

你可以看到,在X軸的字符串被截斷。

回答

1

有一個簡單的自動化solution

plot_canvas.tight_layout()

您也可以在創建插曲時,通過傳遞rect關鍵字參數add_subplot格式[left, bottom, width, height]定義軸的矩形。

+0

如果您已經完成了'import matplotlib.pyplot as plt',那麼您也可以通過'plt.tight_layout()'來訪問它。 – drevicko