2014-07-16 45 views

回答

12

這些值是剛剛從外地取輸入數據幀的第二圖像中的傳奇,你用作因子網格圖中的變量colhue。因此,正確的做法是在原始DataFrame中設置所需的值,然後將其傳遞至seaborn.factorplot

或者,一旦繪製完成,該函數將返回一個名爲set_titles的方法的類FacetGrid的對象。這使您可以更靈活地繪製標題後更改標題,但它也基本上基於您傳遞給函數的DataFrame中的值。查看該方法的文檔字符串以獲取更多信息。

最後一個選項是使用matplotlib命令手動設置標題。返回的FacetGrid對象還具有axes屬性,該屬性是圖中maptlotlib軸的2維數組。您可以循環瀏覽並將標題設置爲任何您想要的:

g = sns.factorplot(...) 
titles = ["foo", "bar", "buz"] 
for ax, title in zip(g.axes.flat, titles): 
    ax.set_title(title) 
+0

對於遲到的回覆感到抱歉!非常感謝你的回答。我正在嘗試這些代碼,但沒有任何反應。我首先運行因子圖函數,然後循環的標題沒有發生。所以我再次運行因子繪圖功能,仍然沒有任何改變。這與訂單有什麼關係?謝謝! @mwaskom – MYjx

+1

你在IPython筆記本上繪圖嗎?如果是這樣,這一切都必須發生在同一個單元格中。這可能是問題所在。 – mwaskom

+0

@mwaskom對不起,我想看看你是否對OP問題的其他部分有了答案。是否可以調整放置在圖例中的列名稱,而不更改基礎數據框?我希望能夠在我的列標題中使用unicode文本。 –