Excelのグラフなら軸ラベルを変えたければ、ラベル部分をダブルクリックすることで簡単に修正できるのに、ggplot2で描いた場合のラベルって、どうやって変更するの?そんな経験ありませんか?せっかくggplot2を使うことで、Excelよりもウンと綺麗な図が簡単に描けるようになったのですから、軸ラベルをカスタマイズする方法も覚えてしまいましょう。
ggplotの軸ラベルを変える
ggplot2で軸ラベルを変える方法は3つあります。
- xlab(), ylab()を使う方法
- labs()を使う方法
- 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等に対しても同じようなやり方で、ラベルを修正することができますので、ぜひ使ってみてください。