0

我试图用 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 中的坐标。

非常感谢对工作解决方案的任何推动!

4

0 回答 0