R 根据频率生成堆叠条形图
我有这样一个数据框:R 根据频率生成堆叠条形图,r,bar-chart,R,Bar Chart,我有这样一个数据框: head(mydata) id GeoBefore GeoAfter 1 A A 2 B B 3 A B 4 B A 5 A A 6 B B 我想画一个有两列的堆叠条形图,GerBefore和GeoAfter,我想显示有多少个a,B,等等。。。每个酒吧里都有咖啡 我正在努力做到: g
head(mydata)
id GeoBefore GeoAfter
1 A A
2 B B
3 A B
4 B A
5 A A
6 B B
我想画一个有两列的堆叠条形图,GerBefore和GeoAfter,我想显示有多少个a,B,等等。。。每个酒吧里都有咖啡
我正在努力做到:
gb <- cbind(mydata$GeoBefore, "2014")
ga <- cbind(mydata$GeoAfter, "2015")
geo <- as.data.frame(rbind(gb,ga))
colnames(geo) <- c("value", "period")
head(geo)
barplot(geo,
legend.text=geo$period,
args.legend=list(bty="n",horiz=TRUE),
col=brewer.pal(5,"Set1"),border="white",
main="Title")
未经测试
library(ggplot2)
ggplot(geo, aes(x = period, fill = value)) +
geom_histogram()
您可以通过以下方式完成此操作:
ans <- cbind(table(mydata$GeoBefore),table(mydata$GeoAfter))
colnames(ans) <- c("GeoBefore","GeoAfter")
barplot(ans,legend.text = rownames(ans))
ans
ans <- cbind(table(mydata$GeoBefore),table(mydata$GeoAfter))
colnames(ans) <- c("GeoBefore","GeoAfter")
barplot(ans,legend.text = rownames(ans))