gpt4 book ai didi

r - ggplot2 geom_bar 在某些情况下在位置 ="fill"时给出错误

转载 作者:行者123 更新时间:2023-12-04 16:52:39 28 4
gpt4 key购买 nike

尝试对 geom_bar 使用 position="fill"时出现错误。这是一个 MWE:

temp = data.frame( X=rep(1:10,10), weight=runif(100), fill=rbinom(100,size=3,p=.5) )
temp$weight[temp$fill==3] = 0
ggplot( temp, aes(x=X, weight=weight, fill=as.factor(fill)) ) +
geom_bar(bin_width=1)
ggplot( temp, aes(x=X, weight=weight, fill=as.factor(fill)) ) +
geom_bar(bin_width=1,position="fill")

第一个 ggplot 调用工作正常,生成一个条形图,其中每个条由对应于级别 0、1 和 2 的 3 种颜色组成。图例显示最终级别 (3),但由于权重始终为 0,它没有出现在情节上。

但是,第二个 ggplot 调用返回错误。我原以为它会返回与以前相同的图,但只是将每个条的高度缩放到 1。知道为什么会发生这种情况,是否有解决方法?

最佳答案

当您使用 position=fill 时,它似乎希望 weight > 0。如果你这样做:

ggplot(temp[temp$weight > 0,], 
aes(x=X, weight=weight, fill=factor(fill))) +
geom_bar(bin_width=1, position="fill")

然后就可以了。

关于r - ggplot2 geom_bar 在某些情况下在位置 ="fill"时给出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14959630/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com