首页 > 解决方案 > 绘制自定义垂直线直到曲线

问题描述

我希望垂直线相交后不要超出曲线线

# example data:
x <- 1:50
dat <- data.frame(x = x, y = 1 - exp(-x/43)^4)

ggplot(dat, aes(x = x, y = y)) + geom_line() + geom_vline(xintercept = c(10, 20, 30), lty = "dashed")

在此处输入图像描述

标签: rggplot2

解决方案


使用geom_segment代替:

ggplot(dat, aes(x = x, y = y)) + 
  geom_line() + 
  geom_segment(aes(x = x, xend = x, y = min(dat$y), yend = y),
               data = dat[ dat$x %in% c(10, 20, 30), ],
               lty = "dashed")

在此处输入图像描述


推荐阅读