我对来自包gap.barplot
的{{1}}如何工作感到相当困惑,因为下面的代码会返回错误
plotrix
给出的错误是:
rect中的错误(xtics [y< gap [1]] - halfwidth,botgap,xtics [y< gap [1]] +: 不能混合零长度和非零长度坐标
R文档中给出的示例是
gap.barplot( c(3.5, 3, 4, 5), gap = c(1, 3), ytics = c(0, 1, 4, 5) )
哪个工作正常。唯一的区别是我的例子在休息之上有所有条形。您可能会问,为什么不只是使用不同的ylim,答案就是有时您真的想向读者强调轴在视觉上从零开始(您希望读者能够掌握相对和绝对的差异)
答案 0 :(得分:2)
你可以按照@Jota的建议欺骗情节,然后调整xlim
和xaxlab
:
library(plotrix)
gap.barplot(c(0, 3.5, 3, 4, 5), gap = c(1, 3), ytics = c(0, 1, 4, 5),
xlim=c(1.5,5.5), xaxlab = c(-1,1:4), xaxs = "i", yaxs = "i")
显然xlim
和xaxlab
是手动调整的,但通常是间隙图的情况。 xaxs
和yaxs
删除第一个刻度和轴之间的空格。特别需要x< 0,隐藏技巧吧。
您可以利用xaxs
(按预期需要手动调整),而不是更改halfwidth
,也可以将栏分开:
gap.barplot(c(0, 3.5, 3, 4, 5), gap = c(1, 3), ytics = c(0, 1, 4, 5),
xlim=c(1.6,5.4), xaxlab = c(-1,1:4), halfwidth = 0.4)