我已经修改了gap.barplot帮助文件中的示例代码。
twogrp<-c(0, 4, 5, 7, 2,3, 1, 7, 18, 22, 25, 26, 28)
gap.barplot(twogrp,gap=c(8,16),xlab="Index",ytics=c(3,6,17,20),
ylab="Group values",main="Barplot with gap")
当我绘制上面的代码时,结果图使0值看起来像负值,1值看起来像零。有没有办法改变这一点,如果我的向量包含零值,则不会绘制任何内容,如果值为1,则我会看到一个凸起的线条。我注意到样例文件避免了1和0,并且样例文件产生的绘图在y=1处具有x轴。
发布于 2014-05-21 08:13:38
在gap.barplot
(plotrix version3.5-5)中有一个明显的拼写错误。现在,它正在将条的底部设置为最小x
值,而不是最小y
值。以下代码将复制该函数并更改该行(如果找到)
gap.barplot2<-gap.barplot
if (deparse(body(gap.barplot2)[[c(20,4,4)]])==
"botgap <- ifelse(gap[1] < 0, gap[1], xlim[1])") {
body(gap.barplot2)[[c(20,4,4)]] <-
quote(botgap <- ifelse(gap[1] < 0, gap[1], ylim[1]))
} else {
stop("line not found")
}
然后你就可以运行
gap.barplot2(twogrp,gap=c(8,16),xlab="Index",ytics=c(3,6,17,20),
ylab="Group values",main="Barplot with gap")
要获得
在不设置ylim[2]
(最大y值)的情况下,似乎没有简单的方法来设置ylim[1]=0
。点阵绘制函数将允许ylim=c(0,NA)
。这将很好地强制使用零线,但让函数的其余部分计算出默认的最大值应该是多少。
因此,您现在可以使用此替代方案。我会联系包的作者,让他们知道这个错误。如果你愿意,你可以给他们发一个这个问题的链接。
https://stackoverflow.com/questions/23768312
复制相似问题