首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在gap.barplot中,X轴相对于1而不是0,我如何更改它?

在gap.barplot中,X轴相对于1而不是0,我如何更改它?
EN

Stack Overflow用户
提问于 2014-05-21 03:27:03
回答 1查看 539关注 0票数 0

我已经修改了gap.barplot帮助文件中的示例代码。

代码语言:javascript
运行
复制
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轴。

EN

回答 1

Stack Overflow用户

发布于 2014-05-21 08:13:38

gap.barplot (plotrix version3.5-5)中有一个明显的拼写错误。现在,它正在将条的底部设置为最小x值,而不是最小y值。以下代码将复制该函数并更改该行(如果找到)

代码语言:javascript
运行
复制
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")
}

然后你就可以运行

代码语言:javascript
运行
复制
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)。这将很好地强制使用零线,但让函数的其余部分计算出默认的最大值应该是多少。

因此,您现在可以使用此替代方案。我会联系包的作者,让他们知道这个错误。如果你愿意,你可以给他们发一个这个问题的链接。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23768312

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档