2014-10-01 171 views
5

我有一個多行的圖,每張圖單獨標記。我想在劇情中添加一個圖例,以便可以識別各條線。標籤和標記的默認排序看起來像:Matplotlib圖例:標記上面的標籤

標記:標籤
標記:標籤
標記:標籤
...等等。

出於各種美學原因,我希望圖例中的列數等於使用ncol選項更改的行數(和標籤)數。所以,目前,我的傳說是這樣的:

標記:標籤       標記:標籤       標記:標籤

這將是對我來說更清晰,然而,有上述標籤這種安排中的標記。我想是這樣的:

標籤           標籤           標籤
標記   標記   標記

我不知道是否有一個「快修復「的方式來實現這樣的傳奇。

+0

您是否發現這個問題的「快速修復」呢?我也有興趣這樣做。 – 2015-08-25 12:31:48

+0

從文檔看來,唯一的選擇是標記:標籤或標籤:標記。 – pceccon 2016-04-25 18:32:11

回答

1

最後,我對此的處理方式是使用legend.get_texts()手動配置圖例中文本項的位置以遍歷每個文本對象。一些虛擬代碼:

for txt in legend.get_texts(): 
    txt.set_ha("center") # horizontal alignment of text item 
    txt.set_x(-5) # x-position 
    txt.set_y(10) # y-position 

通過增加y位置,您可以將標籤向上推(即在標記上方)。同樣,通過減少x位置,可以實現標記頂部的對齊。