提问者:小点点

我想每个站点绘制多个直方图


我想要x轴上的4个直方图;每个站点一个,每组个人一个垃圾箱。这些小组是:;“mol”、“an”、“外壳”和“其他”。y轴将是平均丰度。数据帧可以称为DF。

ggplot(DF,aes(fill=?,y=?,x=Site))几何图形条(position=“dodge”,stat=“identity”)

我很想把fill=和y=的部分放进去,我已经用向量分别做了,它工作了,但我想把所有的部分都分组。DF$Site不同于我在简单直方图中使用的另一个“Site”:Site

我会用:fill=rep(“随便什么”,5)来“填充”

对于我的方法,我将创建一个向量并插入y=like so:mol=c(1,0,0,4,12.66666 7),我还将使用平均向量和误差条的标准偏差向量:

sdmol=c(0.471404521,0,0,5.656854249,16.51934892)

geom_errorbar(aes(x=Site,ymin=mol-sdmol,ymax=mol sdmol),宽度=0.4,颜色=橙色,alpha=0.9,大小=1)主题(文本=element_text(大小=20))

如果有帮助,我可以重新组合所有数据。非常感谢。


共1个答案

匿名用户

像这样的东西?

library(tidyverse)
DF %>% 
  pivot_longer(
    cols = c(mol, an, crust)
  ) %>% 
  ggplot(aes(x=factor(Site), y=value, fill=name))+
  geom_col(position = position_dodge()) 

library(tidyverse)
DF %>% 
  pivot_longer(
    cols = c(mol, an, crust)
  ) %>% 
  ggplot(aes(x=Site, y=value, fill=name))+
  geom_col(position = position_dodge()) +
  facet_wrap(.~Site, scales = "free")