小编met*_*zoa的帖子

用 geom_bar() 覆盖两个条形图

我试图将两个条形图叠加在彼此之上,而不是旁边。数据来自同一个数据集。我想要 x 轴上的“块”和“开始”和“结束”作为覆盖条形图。

    Block   Start       End
1    P1L     76.80       0.0
2    P1S     68.87       4.4
3    P2L     74.00       0.0
4    P2S     74.28       3.9
5    P3L     82.22       7.7
6    P3S     80.82      17.9
Run Code Online (Sandbox Code Playgroud)

我的脚本是

 ggplot(data=NULL,aes(x=Block))+
    geom_bar(data=my_data$Start,stat="identity",position ="identity",alpha=.3,fill='lightblue',color='lightblue4')+
    geom_bar(data=my_data$End,stat="identity",position ="identity",alpha=.8,fill='pink',color='red')
Run Code Online (Sandbox Code Playgroud)

我得到错误:ggplot2 不知道如何处理数字类的数据

我也试过

    ggplot(my_data,aes(x=Block,y=Start))+
      geom_bar(data=my_data$End, stat="identity",position="identity",...)
Run Code Online (Sandbox Code Playgroud)

有谁知道我怎样才能做到这一点?谢谢你。

编辑:

如何获得闪避叠加条?

我编辑这篇文章,因为我的下一个问题是相关的,因为它与我原来的帖子相反。

@P.merkle

我不得不将我的绘图更改为四个条形图,显示所有标记为 L 和 S 的区块的平均值。 L 代表沿海地区,S 代表沿海地区。他们进行了两种处理:正常和减少。

我已经计算了平均值和它们的标准差。我需要四个带有各自误差条的条形: Normal/Littoral , Reduced/Littoral , Normal/Sublittoral , Reduced/Sublittoral 。

问题是当我绘制它时,沿海酒吧和两个亚沿海酒吧相互重叠!所以现在我希望它们不要重叠!我怎样才能让它发生?我已经尝试了各种position = 'dodge'position = position_dodge(newdata$Force),但没有运气......

我的newdata包含以下信息:

Zonation Force …

overlay r ggplot2 errorbar

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

errorbar ×1

ggplot2 ×1

overlay ×1

r ×1