まずは蝋の翼から。

学んだことを書きながら確認・整理するためのメモブログ。こういうことなのかな?といったことをふわっと書いたりしていますが、理解が浅いゆえに的はずれなことも多々あると思うのでツッコミ歓迎

ggplotのでいちいちbreaks+seqを使わずに目盛りの刻み幅を指定する

ggplotではX軸の目盛り幅を指定するときはscale_x_continuousに対してbreaksオプションに対してseqを用いて刻み幅nでX軸に値を表示します。

ただし、seqでの指定だと breaks = seq(xmin, xmax, n)といったようにxの表示最大値と最小値を意識して使わないといけません。
ここ部分をseqではなくscales::breaks_widthを用いると刻み幅nだけを指定できて楽です。

通常のseqを使う場合は以下

library(tidyverse)

values = tibble(a = 0:10, b = 0:10)

values %>% 
  ggplot(aes(a, b)) +
  geom_point() +
  scale_x_continuous(breaks=seq(0, 10, 2), limits=c(0,10)) # seqを用いて2刻み

f:id:chito_ng:20200411134055p:plain

scales::breaks_widthを使う場合は以下。

library(scales)

values %>% 
  ggplot(aes(a, b)) +
  geom_point() +
  scale_x_continuous(breaks=breaks_width(2), limits=c(0,10)) # breaks_widthを用いて2刻み

f:id:chito_ng:20200411134055p:plain

参考

www.tidyverse.org