2014-02-12 75 views
0
import matplotlib.pyplot as plt 

x, y = [1, 2, 3], [5, 7, 2] 
fig = plt.figure() 
ax = fig.add_subplot(111) 
ax.plot(x, y) 
fig.tight_layout() #растягивает графики на всё окно 
leg = ax.legend(['legend'], bbox_to_anchor = (1.0, 0.5), loc='upper left',) 
plt.show() 

圖例位於框架之外。我看到了這個傳說的一部分,但我想看到所有。怎麼做?圖例在框架外

回答

3

這是bbox_to_anchor做:

用戶可以使用 * bbox_to_anchor *關鍵字參數傳說指定任意位置。 bbox_to_anchor可以是BboxBase(或其派生物)的實例或2或4個浮點數的元組。對於 例如:

loc = 'upper right', bbox_to_anchor = (0.5, 0.5) 

將放置圖例,以便在 傳說的右上角軸的中心。

所以玩弄那個元組,例如試試bbox_to_anchor = (0.05, 0.95)。或者完全放棄它,傳說將在左上角。

編輯:如果你想傳說被淘汰的次要情節的,你可以嘗試以下方法:

import matplotlib.pyplot as plt 

x, y = [1, 2, 3], [5, 7, 2] 
fig = plt.figure() 
ax = fig.add_axes((0.2, 0.05, 0.75, 0.9)) 
ax.plot(x, y) 
leg = ax.legend(['legend'], bbox_to_anchor = (0, 0.9)) 
plt.show() 

你可以調整的數字微調的位置。

+0

我需要傳奇已經不合時宜,但我想看傳說。 – user3301310

+0

@ user3301310你的意思是出於「小塊」?但是如果你使用'tight_layout',那裏沒有空間? –

+0

是的,當我使用tight_layout()時,沒有傳奇的空間! – user3301310