Ggplotで定義済みのカラーパレットを使用する方法を知っている人はいますか?
使用したい色のベクトルがあります:
rhg_cols <- c("#771C19", "#AA3929", "#E25033", "#F27314", "#F8A31B",
"#E2C59F", "#B6C5CC", "#8E9CA3", "#556670", "#000000")
しかし、私はそれを何も起こさなかった
ggplot(mydata, aes(factor(phone_partner_products)), color = rhg_cols) +
geom_bar()
aes()
の中に_colour = rhg_cols
_を入れる必要があります。私が知る限り、横軸に因子変数を使用してバーに勾配を適用しますか?次にfill
を使用します-代わりにこれを試してください:
_ggplot(mydata, aes(factor(phone_partner_products), fill = factor(phone_partner_products))) +
geom_bar() +
scale_fill_manual(values = rhg_cols)
_
または、次のようにしておおよそのレプリカを作成してください。
_ggplot(mydata, aes(factor(phone_partner_products), fill = phone_partner_products))) +
geom_bar() +
scale_fill_gradient(low = "#771C19", high = "#000000")
_
2番目のケースでは、連続変数がfill
aestheticsに渡されるため、_scale_fill_gradient
_が後で渡されることに注意してください。 factor
をfill
aesに渡す場合、scale_fill_manual(values = rhg_cols)
を使用する必要があります。
色がパレットの場合、scale_colour_manual
を使用します。
ggplot(mydata, aes(factor(phone_partner_products), colour = colour_variable)) +
scale_colour_manual(values = rhg_cols)
まず、データセットに色を追加します。
mydata$col <- rhg_cols
次に、その列に色をマップし、scale_colour_identity
を使用します
ggplot(mydata, aes(factor(phone_partner_products, colour = col))) +
geom_bar() +
scale_colour_identity()
必要な色は色の見た目の値なので、本当に必要なのはidentity
スケール、この場合は_scale_fill_identity
_です。
_ ggplot(mydata, aes(factor(phone_partner_products)), color=rhg_cols) +
geom_bar() +
scale_fill_identity())
_
データを提供しなかったため、色データを使用して少し異なる例を使用します。
_ rhg_cols <- c("#771C19","#AA3929","#E25033","#F27314","#F8A31B",
"#E2C59F","#B6C5CC","#8E9CA3","#556670","#000000")
mydata <- sample(rhg_cols, 100, replace = TRUE)
qplot(mydata, fill = mydata) +
scale_fill_identity()
_
注:例ではわかりやすくするため、+ opts(axis.text.x=theme_text(angle=90))
を省略しました。