将绘制的段末端从圆形变为平坦

Yut*_*ing 10 r

当我使用segments()R绘制一个片段时,两端总是呈圆形.如何将两端更改为扁平?

Ben*_*ker 14

来自?par:

 ‘lend’ The line end style.  This can be specified as an integer or
      string:

      ‘0’ and ‘"round"’ mean rounded line caps [_default_];

      ‘1’ and ‘"butt"’ mean butt line caps;

      ‘2’ and ‘"square"’ mean square line caps.
Run Code Online (Sandbox Code Playgroud)

例如:

plot(0:1,0:1,type="n")
par(lend=0); segments(0,0.2,1,0.2,lwd=8)
par(lend=1); segments(0,0.4,1,0.4,lwd=8)
par(lend=2); segments(0,0.6,1,0.6,lwd=8)
Run Code Online (Sandbox Code Playgroud)

segments(0,0.2,1,0.2,lwd=8, lend=1)等. 在此输入图像描述

(你必须仔细看看区别,特别是"屁股"和"方形"帽之间)

  • [使用粗透明线条](http://stackoverflow.com/a/9869679/471093)您可以更轻松地突出显示差异(尝试epsilon = 0.1) (2认同)
  • 应该可以将图形参数(例如`lend`直接传递给`segments()`,而无需额外的`par()`调用 (2认同)