見出し画像

ggplot2: 棒グラフの見た目を変更(1)

前回作成した棒グラフはシンプルなので、見た目を変更してみましょう。ggplot2 で見た目を変更するには、これまでの ggplot() + geom_col() にプラスで続けて theme() (テーマ関数)で行います。

全体は、「ggplot() + geom_col() + theme()」という形になります。

目盛りに日本語を使用する+ラベルを回転

使用するデータは、前回と同じです。

> top10
# A tibble: 10 × 4
   weapon         total percentage buki
   <chr>          <dbl>      <dbl> <chr>
 1 sharp          35209       7.68 シャープマーカー
 2 wakaba         30992       6.76 わかばシューター
 3 lact450        25510       5.56 LACT-450
 4 sshooter       21767       4.75 スプラシューター
 5 promodeler_mg  20882       4.55 プロモデラーMG
 6 52gal          20309       4.43 .52ガロン
 7 bold           17598       3.84 ボールドマーカー
 8 furo           16551       3.61 オーバーフロッシャー
 9 nzap85         16230       3.54 N-ZAP85
10 variableroller 15452       3.37 ヴァリアブルローラー

weapon の列を x 軸(目盛り)に使用していたので、ブキ名が英語表記になっていました。データの4列目の buki に日本語表記がありますので、これを用います。

plot_data <- top10 %>%
  mutate("buki" = fct_reorder(buki, desc(percentage)))

g <- ggplot(plot_data, aes(buki, percentage)) + geom_col()
g + theme(text = element_text(family = "HiraKakuProN-W3"),
          axis.text.x  = element_text(angle = -75, hjust = -0.01, vjust = 0.3))

前回同様に、fct_reorder() を使用して、buki 列をファクターに変更し、percentage をレベルに反映させています。

日本語を用いるには、theme() 関数でフォントを指定する必要があります。(指定しないと豆腐になります。)「text = element_text(family = "HiraKakuProN-W3")」の部分です。

*HiraKakuProN-W3 は、Macの場合です。OSに応じたフォントを指定してください。

また、日本語では横に長くなり表示しきれないため、x軸のテキストを回転させて、斜めに表示させています。「axis.text.x = element_text(angle = -75, hjust = -0.01, vjust = 0.3)

*hjust, vjust のオプションで表示位置(左右、上下)を微調整しています。

結果は下記のようになります。

目盛りに日本語を使用した棒グラフ


この記事が気に入ったらサポートをしてみませんか?