R:避免abline通过我的0点自动画一条水平线

R: avoid abline to automatically draw a horizontal line through my 0 point

我的目标是在我现有绘图的 x 轴上每 5 个刻度制作垂直虚线网格线。

我使用的命令是:

abline(h=FALSE,v=seq(0,40,by=5),col="gray",lty=3)

结果正是我需要的结果,除了我的命令在我的 0 位置创建的一条水平线。 y 轴从 -20 到 +20。有什么想法吗?

正如 Miff 和 CathG 在评论中回答的那样:

设置 h=NULL 修复它。

非常感谢! (p.s。米夫,如果你 post 一个答案,我会接受它,这样你就可以获得荣誉)

形成 ?abline 的帮助文件,我们看到水平线将绘制在 h 的值处。 FALSE 被转换为数值零,因此您在 y=0 处得到的行。要解决此问题,请使用代码:

plot(-10:50, rnorm(61)) #to create a plot
abline(h=NULL,v=seq(0,40,by=5),col="gray",lty=3)

正如@CathG 在评论中提到的那样,这是默认设置,因此您可以简单地省略 h 参数以获取:

abline(v=seq(0,40,by=5),col="gray",lty=3)