本节书摘来自异步社区《R数据可视化手册》一书中的第3章,第3.2节,作者 【美】Winston Chang,更多章节内容可以访问云栖社区“异步社区”公众号查看
3.2 绘制簇状条形图
问题
如何绘制基于某个分类变量的簇状条形图?
方法
将分类变量映射到fill参数,并运行命令geom_bar(position="dodge")。
下面以cabbage_exp数据集为例演示一下绘图过程,cabbage_exp数据集包含两个分类变量Cultivar和Date及一个连续型变量Weight。
library(gcookbook) #为了使用数据
cabbage_exp
Cultivar Date Weight
c39 d16 3.18
c39 d20 2.80
c39 d21 2.74
c52 d16 2.26
c52 d20 3.11
c52 d21 1.47
我们分别将Date和Cultivar映射给x和fill(见图3-4)。
ggplot(cabbage_exp, aes(x=Date, y=Weight, fill=Cultivar)) +
geom_bar(position="dodge",stat="identity")
讨论
最简单的条形图通常只对应一个绘制在x轴上的分类变量和一个绘制在y轴上的连续型变量。有时候,我们想额外添加一个分类变量跟x轴上的分类变量一起对数据进行分组。此时,可通过将该分类变量映射给fill参数来绘制簇状条形图