我试图用 R 的 ggplot 画一条线,从一个方面开始,在另一个方面结束。
我相信这个问题还没有被问到(至少我找不到),但我找到了一些可以实现这一点的示例代码:http ://rstudio-pubs-static.s3.amazonaws.com/410976_f8eb6b218bfa42038a8b7bc9a6f9a193.html
但是,文档很薄弱,我没有设法解开代码。有人可以提供一个易于理解的版本来说明这个技巧吗?
以下是一些代码作为示例:
library(ggplot2)
df <- data.frame(x = 1:6, y = 1:6, facet = c(rep('A', times = 3), rep('B', times = 3)))
gg <- ggplot(data = df, mapping = aes(x = x, y = y)) + facet_grid(~ facet) +
geom_line()
gg
line <- data.frame(x = 3, y = 3,
xend = 4, yend = 4,
facet = 'A')
gg_line <- gg + geom_segment(data = line, mapping = aes(x = x, y = y,
xend = xend, yend = yend),
inherit.aes = FALSE, color = 'red')
gg_line
显然,在 中gg_line
,红色geom_segment
到达了方面 A 中的相应坐标。但是,我希望端点引用方面 B 中的坐标。
非常感谢对工作解决方案的任何推动!