見出し画像

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個のブキと一緒に表示すると下図のようになり、その差が際立ちます。上位10個のブキだけで全体の48%を占めているので当然ですが。。。

棒グラフ:使用率の上位10ブキと下位10ブキ

最初のシーズン (Drizzle 2022) は、まだ、ブキも55個しかありませんでした。現在は、その倍になっています。この時点でも 0.4%ほどだったL3リールガンは、さらにレアな存在になったと思われます。



いいなと思ったら応援しよう!