折れ線グラフで各系列にラベルをつける際はgghighlightを用いるのが楽なんじゃなかろうか
こういうデータがあるとする。
library(dplyr) library(ggplot2) library(gghighlight) ChickWeight_diet <- ChickWeight %>% group_by(Diet, Time) %>% summarise(weight = mean(weight)) > ChickWeight_diet # A tibble: 48 x 3 # Groups: Diet [?] Diet Time weight <fct> <dbl> <dbl> 1 1 0 41.4 2 1 2 47.2 3 1 4 56.5 4 1 6 66.8 5 1 8 79.7 6 1 10 93.1 7 1 12 109. 8 1 14 123. 9 1 16 145. 10 1 18 159. # … with 38 more rows
折れ線グラフで各系列にラベルをつけたい。
いろいろやり方はあるが、gghighlightパッケージを用いるのが一番楽な印象。
gghighlight()の条件設定で全て該当するような条件を設定するのがポイント。
なお、筆者の環境はMacなので、日本語が文字化けするためlabel_paramsでMacの日本語フォントを指定している。
ggplot(ChickWeight_diet, aes(Time, weight, color=Diet)) + geom_line() + gghighlight(max(weight)>0, label_params = list(family = "HiraKakuPro-W3"))
追記(2019/2/17) 開発者よりコメントいただき、条件設定は不要とのこと。
なるほど、こういう使い方もあるんですね! ちなみにmax(weight)>0みたいなダミーのpredicateはなくても大丈夫です。 https://t.co/n8hFDuPP2r
— Hiroaki Yutani (@yutannihilation) 2019年2月16日
いかがでしたか?