ggplot:绘制超出图表限制的线段

4

我想绘制一张图表,其中的一部分超出了绘图的限制。但是ggplot只是把这部分去掉而不是显示它的可见部分。

以下是一个示例以进行说明:

library(ggplot2)

df <- data.frame(x1 = 2, x2 = 6, y1 = 10, y2 = 50)

ggplot(mtcars, aes(wt, mpg)) +
    geom_point() +
    geom_segment(aes(x = x1, y = y1, xend = x2, yend = y2), data = df) +
    xlim(c(0, 7)) +
    ylim(c(0, 35)) +
    coord_fixed(.1)

这是我想要的:
enter image description here 但实际上,这个部分没有被绘制出来,而且我得到了以下警告:
Warning message:
Removed 1 rows containing missing values (geom_segment). 

我希望保持图表限制的固定和使用coord_fixed(.1)设置。


不需要删除标记为重复的帖子-它们是指向规范源中最佳信息的有用指针。 - Gregor Thomas
1个回答

4

使用 xlimylim 可以去除超出范围的数据,为了达到想要的结果,请在 coord_fixed 中设置范围限制。

library(ggplot2)

df <- data.frame(x1 = 2, x2 = 6, y1 = 10, y2 = 50)

ggplot(mtcars, aes(wt, mpg)) +
  geom_point() +
  geom_segment(aes(x = x1, y = y1, xend = x2, yend = y2), data = df) +
  coord_fixed(.1, xlim= c(0,7), ylim = c(0, 35))


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接