簡體   English   中英

在seaborn中繪制兩列dataFrame

[英]Plotting two columns of dataFrame in seaborn

我正在嘗試在 seaborn 中創建一個條形圖,它顯示數據框中每一行(因子)的兩個變量(權重、方差)的值。 這是我的數據的樣子:

    Factor    Weight  Variance
    Growth    10%      0.15
    Value     20%      0.35

這是我的代碼:

    fig=plt.figure(figsize=(10,10))
    ax1=fig.add_subplot(221)
    sns.barplot(x=df.index, y=df[['Weight', 'Variance']], ax=ax1)

每次我無法調試時,上面都會拋出一個錯誤。 我想要實現的是有一個圖,為每個因子顯示兩個彩色條; 一種顏色的權重(例如:紅色)和另一種顏色的差異(例如:藍色)。

任何人都有建議或潛在的解決方法?

謝謝

除了將數據清理為整潔的格式之外,您還需要將文本數據(百分比)重新格式化為數字數據類型。 由於這與條形圖無關,我假設您可以自己解決這個問題,而是專注於繪圖和數據結構:

df = pandas.DataFrame({
    'Factor': ['Growth', 'Value'],
    'Weight': [0.10, 0.20],
    'Variance': [0.15, 0.35]
})
fig, ax1 = pyplot.subplots(figsize=(10, 10))
tidy = df.melt(id_vars='Factor').rename(columns=str.title)
seaborn.barplot(x='Factor', y='Value', hue='Variable', data=tidy, ax=ax1)
seaborn.despine(fig)

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM