web-dev-qa-db-ja.com

pandasカテゴリ別の色でデータフレームバープロットをプロット

pandasを使用して、列のカテゴリに異なる色の棒グラフをプロットします。

簡単な例を次に示します:(インデックスは変数です)

df:
         value   group
variable               
a             10      1
b              9      1
c              8      1
d              7      2
f              6      2
g              5      3
h              4      3

グループに色をつけて棒グラフを作りたい。色も指定したいです。元のデータセットには多くのグループがあります。誰かがこれを手伝ってくれませんか?

15
jonas

色のリストを指定して、関数plotに色パラメーターを渡すだけです。

df['group'].plot(kind='bar', color=['r', 'g', 'b', 'r', 'g', 'b', 'r'])

valueを棒としてプロットし、groupが棒の色を決定するようにしたい場合は、以下を使用します。

colors = {1: 'r', 2: 'b', 3: 'g'}
df['value'].plot(kind='bar', color=[colors[i] for i in df['group']])

次のようなものも使用できます。

list(df['group'].map(colors))

リスト内包の代わりに。

27
Viktor Kerkez