首页 > 解决方案 > 我是否误解了如何使用 abline 功能?

问题描述

我正在尝试使用 plot() 和 abline() 绘制一些线

我的代码:

o = seq(1,100)
p = seq(1,100)

plot(o, p, type='n')
abline(v=5, lty=2) # o>=5
abline(2*p, p, lty=2) #o<2p
abline(o, (36-o*1.5), lty=2) #p<=36-o*1.5

这给了我一个看起来像这样的图表:

图表有错误的线

'o' 轴上最接近 0 的线相对于 'o' 应该是负数,但它似乎略为正数。

标签: r

解决方案


您不应该将值向量传递给abline. 在您的情况下,abline只需选取每个向量的第一个元素作为直线的截距和斜率。

为了看到这一点,我稍微修改了您的代码以索引o并且(36-o*1.5)仅使用第一个元素使用[1]. 结果是一样的(现在是实线)。

o = seq(1,100)
p = seq(1,100)

plot(o, p, type='n')
abline(v=5, lty=2) # o>=5
abline(2*p, p, lty=2) #o<2p
abline(o[1], (36-o*1.5)[1]) #p<=36-o*1.5


推荐阅读