ggplot2: 棒グラフの見た目を変更(2)、項目によって色を変える
前回、x軸の目盛りを日本語に変えて、文字を回転させるところまでを解説しました。今回は、棒グラフの色を項目によって変更する方法です。
x軸の項目によって異なる色を設定する
自動的に割り振られる色を使うのであれば、方法としては単純です。最初の ggplot() 実行時の引数 aes() に、x, y に加えて「fill = 変数」を設定するだけです。
x軸でも使用している buki ごとに指定したいため、「ggplot(plot_data, aes(buki, percentage, fill = buki))」とします。
g <- ggplot(plot_data, aes(buki, percentage, fill = buki))
g + geom_col() +
theme(text = element_text(family = "HiraKakuProN-W3"),
axis.text.x = element_text(angle = -75, hjust = -0.01, vjust = 0.3))
labs() を使って、ラベルとタイトルを設定
ここまでで、 ggplot() + geom_col() + theme() という形になっています。さらに続けて、labs() を使い、ラベルとタイトルを設定して仕上げです。
x 軸のラベルは消したいので、「""」としています。 y 軸のラベルには、「使用率(%)」を指定しました。また、タイトル (title) とサブタイトル (subtitle) をそれぞれ指定しています。
全体のコードは、下記のようになります。
plot_data <- top10 %>%
mutate("buki" = fct_reorder(buki, desc(percentage)))
g <- ggplot(plot_data, aes(buki, percentage, fill = buki))
g + geom_col() +
theme(text = element_text(family = "HiraKakuProN-W3"),
axis.text.x = element_text(angle = -75, hjust = -0.01, vjust = 0.3)) +
labs(x = "", y = "使用率(%)",
title = "使用率上位10", subtitle = "ナワバリ Drizzle 2022")
最終的に下記のような棒グラフになりました。
ちなみに下位の10個のブキと一緒に表示すると下図のようになり、その差が際立ちます。上位10個のブキだけで全体の48%を占めているので当然ですが。。。
最初のシーズン (Drizzle 2022) は、まだ、ブキも55個しかありませんでした。現在は、その倍になっています。この時点でも 0.4%ほどだったL3リールガンは、さらにレアな存在になったと思われます。