在Matplotlib / seaborn我創建一個facetgrid與relplot該資料屬性使用該命令row引數也用于風格屬性。這導致了一個由兩部分組成的傳說。一部分是多余的,我想洗掉圖例的這一多余部分。
這里的代碼:
df = pd.read_csv('data.csv')
# Dataframe df has columns 'size', 'pricepersize', 'date' and 'series'
g = sns.relplot(x='size',
y='pricepersize',
data=df,
kind='line',
hue='date',
style='series',
row='series',
markers=True
)
plt.show()
在這里生成的圖形網格(我想洗掉的圖例部分標記為綠色):

如何擺脫圖例中的“系列”部分,但將樣式引數設定為與行引數相同的資料列?
uj5u.com熱心網友回復:
我想最簡單的方法是讓 sns 創建圖例(這是默認設定),將其洗掉并從原始圖例的所需條目重新生成一個新圖例。
import seaborn as sns
tips = sns.load_dataset("tips")
fg = sns.relplot(data=tips, x="total_bill", y="tip", hue="day", row="time", kind='line', style='time')
給

然后使用
fg.legend.remove()
fg.fig.legend(handles=fg.legend.legendHandles[:5], loc=7)
終于得到

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/402807.html
標籤:
下一篇:條形圖及其軸的資料可視化問題
