在 x 轴上每隔 5 个点绘制线形

Plot lineshape every 5th point on x-axis

我想使用 ggplot 创建一个绘图,其中绘制了多条线。 x 轴从 1:100 开始。

我还想包括每条线的线形,但我不想为 x 轴上的每个点显示它们。相反,我想每 5 个点绘制一次,所以 seq(1,100,5)

我找不到合适的命令,但我认为它存在。 有人可以帮忙吗?

这是你的意思吗?您可以在 data.frame 中添加一个额外的列,并使用 geom_point() 将其绘制成您喜欢的任何形状。只需为您正在绘制的每一行重复。

library(ggplot2)

set.seed(1)
pd <- data.frame(x = c(1:100), y = rnorm(100))
pd$pt <- pd$y
pd$pt[-seq(1, 100, 5)] <- NA

ggplot(pd, aes(x = x, y = y)) +
  geom_line() +
  geom_point(aes(x = x, y = pt))