Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 在条形图中的条形内绘制边框?_R_Plot_Bar Chart - Fatal编程技术网

R 在条形图中的条形内绘制边框?

R 在条形图中的条形内绘制边框?,r,plot,bar-chart,R,Plot,Bar Chart,我正在绘制一个带有粗条边框的简单条形图: par(lwd=3) barplot(c(6,7)) arrows(0,0,10,0,lwd=1) 边界在x轴上略微突出,看起来很糟糕 有没有办法在每个条内而不是在其周围绘制边框?在找不到剪辑()或简单的“内边框”后,我的建议是: opar <- par(lwd=3) barplot(c(6,7)) arrows(0,0,10,0,lwd=3, col="grey") par(opar) opar我能想到的最好方法是在barplot中设置bor

我正在绘制一个带有粗条边框的简单条形图:

par(lwd=3)
barplot(c(6,7))
arrows(0,0,10,0,lwd=1)
边界在x轴上略微突出,看起来很糟糕


有没有办法在每个条内而不是在其周围绘制边框?

在找不到剪辑()或简单的“内边框”后,我的建议是:

opar <- par(lwd=3)
barplot(c(6,7))
arrows(0,0,10,0,lwd=3, col="grey")
par(opar)

opar我能想到的最好方法是在
barplot
中设置
border=NA
,然后使用
行添加边框,手工将一些东西拼凑在一起:

par(lwd = 3, lend = 2)
barplot(c(6,7),border = NA)
lines(c(0.2,0.2,1.2,1.2),c(0.02,6,6,0.02))
lines(c(1.4,1.4,2.4,2.4),c(0.02,7,7,0.02))


这远非理想。在
行中使用的坐标
假设条与条之间的默认间距为0.2,将底部向上拉至0.02只是基于我的目测。您可能需要根据具体情况对其进行修补。

进行了大量代码检查。我看不到任何直接支持这一点的到rect()、polygon()或lines()的打印参数。我不确定关于剪裁的含义。请看joran的示例。高条的上线是低条的一半宽。这是因为打印是在打印区域的边缘“剪裁”的。我不能告诉你为什么它不会发生在绘图区域的下边界。嗯,是的,我看到了。调整边距和轴比例使其不成为问题。是的,这是一个小技巧,但它达到了我想要的美学效果。当稍后在Illustrator中编辑时,它们的线条当然会被视为单独的对象,但这并不太糟糕。谢谢