R : ggplot2の軸ラベルってどうやって変更するの?3つの方法を紹介

R

Excelのグラフなら軸ラベルを変えたければ、ラベル部分をダブルクリックすることで簡単に修正できるのに、ggplot2で描いた場合のラベルって、どうやって変更するの?そんな経験ありませんか?せっかくggplot2を使うことで、Excelよりもウンと綺麗な図が簡単に描けるようになったのですから、軸ラベルをカスタマイズする方法も覚えてしまいましょう。

ggplotの軸ラベルを変える

ggplot2で軸ラベルを変える方法は3つあります。

  1. xlab(), ylab()を使う方法
  2. labs()を使う方法
  3. scale_x_continuous(),scale_y_continuous()を使う方法

それぞれの方法について、以下で紹介します。

軸ラベルを変える方法

軸ラベルを変える前

以下の図は、Rにデフォルトで入っているmpgというデータセットのデータを、x軸 = 排気量[ℓ]、y軸 = 燃費 [マイル/ガロン]、色 = 車のクラスとしてプロットしたものです。displ, hwyだと分かりにくいので、この軸ラベルを日本語に修正しようと思います。

library(ggplot2)

ggplot(data = mpg, aes(x = displ, y = hwy, colour = class)) +
  geom_point()

 

xlab(), ylab()を使う方法

x軸、y軸のラベルを変えるだけなら、xlab()、ylab()関数を使うことで、軸ラベルを変えることができます。最後のtheme_gray()の部分は、Macで日本語表示をするための記述です。Windowsなら、ylabの行の「+」以降は不要です。

 

library(ggplot2)

ggplot(data = mpg, aes(x = displ, y = hwy, colour = class)) +
geom_point() +
xlab("排気量 [ℓ]") +
ylab("燃費 [マイル/ガロン]") +
theme_gray(base_family = "HiraKakuPro-W3")

 

labs()を使う方法

x軸、y軸のラベルを変えるだけなら、xlab(), ylab()でもできますが、今回は色の凡例のタイトルも変えようと思います。x軸、y軸のラベルを変えるのに対応した関数xlab(), ylab()があったように、凡例の色を変える関数があればよいのですが、そのような関数は準備されていません。凡例のラベルを変えるのはlabs()関数で引数を設定することで実現します。この方法は、x軸、y軸のラベルを変える場合にも使えます。

library(ggplot2)

ggplot(data = mpg, aes(x = displ, y = hwy, colour = class)) +
geom_point() +
labs(x = "排気量 [ℓ]", y = "燃費 [マイル/ガロン]", colour = "クラス") +
theme_gray(base_family = "HiraKakuPro-W3")

scale_x_continuous(),scale_y_continuous()を使う方法

x軸、y軸の細かい設定用の関数として、scale_x_continuous()関数、scale_y_continuous()関数が準備されています。この関数のname引数に文字列を与えることでも、軸ラベルを変えることができます。凡例のタイトルに対しても、同じような方法が適用できます(図はlabs()を用いた時と同じなので省略)。

library(ggplot2)

ggplot(data = mpg, aes(x = displ, y = hwy, colour = class)) +
geom_point() +
scale_x_continuous(name = "排気量 [ℓ]") +
scale_y_continuous(name = "燃費 [マイル/ガロン") +
scale_color_hue(name = "クラス") +
theme_gray(base_family = "HiraKakuPro-W3")まとめ

 

まとめ

x軸, y軸のラベルの修正方法について整理しました。今回紹介した方法の中では、2番目に紹介したlabs()関数を使う方法が一番使い易いのではないかと思います。この方法なら、fill, size, shape linetype, alpha等に対しても同じようなやり方で、ラベルを修正することができますので、ぜひ使ってみてください。