r中的条形图,每个x变量有多个条形

时间:2019-03-11 20:39:25

标签: r bar-chart

如何绘制条形图,以便x轴上的每个变量(处理组)都显示两个条形,分别代表avgRDm和avgSDM?我希望条形由avgRDm和avgSDM着色。 下图的数据如下:

enter image description here

谢谢

1 个答案:

答案 0 :(得分:2)

我是ggplot的忠实拥护者,因此这是一种选择。将数据从宽到长整形然后将fill的美感映射到key

是最简单(也是最整洁)的
library(tidyverse)
df %>%
    gather(key, val, -trt) %>%
    ggplot(aes(trt, val, fill = key)) +
    geom_col(position = "dodge2")

enter image description here

PS。对于以后的帖子,请使用以下方式以可重复的方式共享数据: dput;屏幕快照绝不是一个好主意,因为它要求受访者手动输入您的样本数据。


样本数据

df <- read.table(text =
"trt    avgRDM  avgSDM
F10    49.5    108.333
NH4Cl   12.583  50.25
NH4NO3  17.333  73.33
'F10 + ANU843'    6.0 7.333", header = T)