Mam linegraph ggplot2
z dwoma liniami o znacznym zachodzeniu na siebie. Próbuję użyć position_jitterdodge()
, aby były bardziej widoczne, ale nie mogę uzyskać linii i punktów do obu jitterów w ten sam sposób. Próbuję jittera punktów i linii tylko poziomo (ponieważ nie chcę sugerować żadnej zmiany na osi Y). Oto MWE:R: Jak jitter zarówno geom_line, jak i geom_point w linegraphie ggplot2?
## Create data frames
dimension <- factor(c("A", "B", "C", "D"))
df <- data.frame("dimension" = rep(dimension, 2),
"value" = c(20, 21, 34, 32,
20, 21, 36, 29),
"Time" = c(rep("First", 4), rep("Second", 4)))
## Plot it
ggplot(data = df, aes(x = dimension, y = value,
shape = Time, linetype = Time, group = Time)) +
geom_line(position = position_jitterdodge(dodge.width = 0.45)) +
geom_point(position = position_jitterdodge(dodge.width = 0.45)) +
xlab("Dimension") + ylab("Value")
która produkuje brzydkie:
ja oczywiście coś fundamentalnie złego tutaj: Co należy zrobić, aby geom_point
jitter śledzić geom_line
jitter?
Fajnie, ten też działa i jest bardzo łatwy. – drgibbon
Zdecydowanie oznaczyłbym rozwiązanie Johna jako najbardziej odpowiednią odpowiedź @drgibbon. – hrbrmstr
Dzięki - choć jestem ciekawy, dlaczego? Obaj wydają się robić to samo. Jedną z cech ggplot, która mnie zadziwia, jest to, jak wiele sposobów na pozór osiąga to samo. Tak się złożyło, że wiedziałem, że ... – JohnSG