Давайте посмотрим на некоторые фиктивные данные. У меня есть различные комбинации предметов, лечения и испытаний. Фактически, каждый субъект связан только с конкретным лечением (звучит глупо, но это всего лишь пример).Группировка по коэффициенту с уклоненным положением в ggplot
library(ggplot2)
d = read.table(text = '
subject treatment trial value
1 1 1 4.5
2 2 1 3.2
3 3 1 1.2
1 1 2 4.8
2 2 2 3.5
3 3 2 1.3
1 1 3 4.2
2 2 3 2.9
3 3 3 1
4 1 1 4.3
5 2 1 3.9
6 3 1 1.1
4 1 2 4.3
5 2 2 3.1
6 3 2 1.8
4 1 3 4
5 2 3 2.6
6 3 3 1.3
', header = TRUE)
d$treatment = as.factor(d$treatment)
d$subject = as.factor(d$subject)
d$trial = as.factor(d$trial)
dodge = position_dodge(.3)
p = ggplot(d, aes(x = treatment, y = value, color = trial, label = subject)) +
geom_point(position = dodge) +
scale_y_continuous(breaks = pretty_breaks(n = 10)) +
ylim(1,5) +
geom_text(hjust = 1.5, position = dodge, size = 3)
print(p)
Сюжет я получаю это:
Я хотел бы добавить линию между теми же субъектами, а это означает, что я хотел бы объединить все «4» S в левом верхнем углу с черной линией.
Простой
geom_line(aes(group = subject), position = dodge)
не работает, хотя, как он somemhow не уважает позицию и просто рисует вертикальную линию:
Как еще я могу достичь этого ?
Высокий. Я полностью забыл о фасетке - это в большей степени имеет смысл для «категоричных» осей x. – slhck