将随钻测量单位转换为用户坐标(R基准图形)?

将随钻测量单位转换为用户坐标(R基准图形)?,r,graphics,R,Graphics,我如何使用lwd来表示一些数量 例如: plot(NULL, type="n", xlim=c(4,7), ylim=c(1,6), xlab="", ylab="") points(c(5.25,5.25), c(4,5), type="l", lwd=87) points(c(5.5,6.5), c(3.5,3.5), type="l", lwd=92) rect(5,3,5.5,4, col="white") 我希望用点绘制的线函数与矩形一样宽/一样高。上面的值87和92是我手动找到的。

我如何使用
lwd
来表示一些数量

例如:

plot(NULL, type="n", xlim=c(4,7), ylim=c(1,6), xlab="", ylab="")
points(c(5.25,5.25), c(4,5), type="l", lwd=87)
points(c(5.5,6.5), c(3.5,3.5), type="l", lwd=92)
rect(5,3,5.5,4, col="white")
我希望用
点绘制的线
函数与矩形一样宽/一样高。上面的值87和92是我手动找到的。有没有办法计算这些数量

编辑:
这个问题的背景是:我想要画图,我想要曲线的厚度代表我的数据。我的第一个想法是使用
lwd
。我能做得更好吗?

lwd
对于您尝试做的事情来说是错误的工具。实际线宽将根据打印窗口的大小(或保存时的尺寸)相对于用户坐标进行更改。您显然知道
rect
命令,为什么不直接使用它呢?您还可以查看
形状

--编辑--

对于更复杂的形状,我的经验不会超出
polygon
。有了它,你可以得到贝塞尔曲线的坐标,然后围绕着x=c(bc$x+dx,rev(bc$x-dx),y=c(bc$y+dy,rev(bc$y-dy))画一个多边形,但我不确定这对于复杂曲线来说效果如何


另一方面,如果您愿意,可以将
点(…,type=“l”)
替换为
线(…)
(我认为这会使我的代码更可读。)

lwd
对于您尝试执行的操作来说是错误的工具。实际线宽将根据用户坐标的大小而变化(或保存时的尺寸)。您显然知道
rect
命令,为什么不直接使用它呢?您还可以查看
shape

--编辑--

对于更复杂的形状,我的经验并没有超出多边形。有了它,你可以得到贝塞尔曲线的坐标,然后围绕x=c(bc$x+dx,rev(bc$x-dx),y=c(bc$y+dy,rev(bc$y-dy),画一个多边形,但我不确定这对于复杂的曲线会有多好


另一方面,如果您愿意,您可以用
行(…)
替换
点(…,type=“l”)
。(我认为这使我的代码更具可读性。)

如果可以的话,我会对这个答案投两次赞成票。
rect
建议+1,提及“形状”包+1。如果需要设置纵横比,则
plot.window
函数中有一个asp参数。感谢快速的回答,我编辑了我的问题以使其更清晰。
shape
vignette将我引向
图表
我不知道的包。再次感谢,我现在认为多边形是正确的选择。当曲线陡峭时会出现问题,但我希望我能解决它。@KarstenW。是的,理想情况下,要使线的厚度恒定,你可以选择在一条方向正交线上距离中心恒定的点。我会投票如果可以的话,这个答案可以用两次。+1表示
rect
建议,+1表示“shape”包。如果需要设置纵横比,则
plot.window
函数中有一个asp参数。感谢快速回答,我编辑了我的问题以使其更清晰。
shape
vignette将我指向
图表
包我不知道。再次感谢,我现在认为多边形是正确的选择。当曲线陡峭时会出现问题,但我希望我能解决它。@KarstenW。是的,理想情况下,要使线具有恒定的厚度,你可以在正交线的方向上选择距离中心恒定的点。