geom_text записывает все данные по всем аспектам
Я использовал ggplot с facet_grid, и я хотел бы указать на каждом аспекте количество наблюдений в каждом аспекте. Я следую примерам, представленным на многих сайтах, но когда мне удается написать что-либо, он записывает все четыре числа наблюдений друг над другом на всех четырех графиках.
Вот команда слоя geom_text: geom_text(data=ldata, aes(x=xpos, y=ypos, label=lab, size=1), group=NULL, hjust=0, parse=FALSE)
ldata - это фрейм данных, в котором перечислены координаты (xpos, ypos) на каждом графике и количество наблюдений (лаборатория). Он печатает числа в правильном положении на графике, но все четыре написаны друг над другом на всех четырех графиках. Я не могу понять, что я делаю не так.
ldata:
xpos ypos lab
1 10 1,35 378
2 10 1,35 2
3 10 1,35 50
4 10 1,35 26
1 ответ
У вас почти есть это. Просто вам нужен еще один столбец в вашем ldata
фрейм данных, который вы дадите facet_grid
, (Я изменил Ypos на Inf)
Обратите внимание на роль splitter
колонка в ldata
ниже, и как это используется в facet_grid
xpos <- c(10,10,10)
ypos <- c(Inf,Inf,Inf)
lab <- c(378,2,50)
splitter <- c(1:3)
ldata <- data.frame(xpos, ypos, lab, splitter)
ggplot(mtcars) + geom_bar(aes(x=cyl)) + facet_grid(~splitter) +
geom_text(data=ldata, aes(x=xpos, y=ypos,
label=lab, size=1),
vjust=2, parse=FALSE)
Который производит: