网格线的极限长度(R图)

Kru*_*rug 1 plot r

如何使 R 图中的网格线plot不超出图的边界?即需要定义网格线的起点和终点。

在给出的示例中,我希望 绘制的网格线grid和 绘制的 y=7.5 处的网格线abline从 y 轴延伸到框的右边缘。

plot(1:10,1:10,type = "n")
abline(h = 7.5, v = 0, col = "gray60", lty = 3)
grid(10,10)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

rno*_*ian 5

您可能(不知不觉地)设置了xpd = TRUExpd = NA。如果您在xpd = FALSE绘图调用之前进行设置,这将阻止您的gridabline(或 Base R 中的任何绘图附加对象)超出绘图区域。

因此,在致电之前请执行以下操作plot()

par(xpd = FALSE)
Run Code Online (Sandbox Code Playgroud)

对于您未来的绘图案例,请记住,它既xpd = FALSE可以在命令中本地abline(h = 2, xpd = FALSE)使用,也可以全局使用,就像我在您的案例中使用它一样。

进一步记住xpd = NAIS 与 不同xpd = FALSE。前者允许绘图远远超出绘图区域par("oma")(外边缘区域),而后者将所有内容保留在par("usr")(内部绘图)区域内。这些功能对于 R 中的各种可视化很有帮助。