r - 做分组条形图的最简单方法

标签 r bar-chart

我有以下数据框:

 Catergory        Reason Species
1   Decline       Genuine      24
2  Improved       Genuine      16
3  Improved Misclassified      85
4   Decline Misclassified      41
5   Decline     Taxonomic       2
6  Improved     Taxonomic       7
7   Decline       Unclear      41
8  Improved       Unclear     117

我正在尝试制作一个分组条形图,将物种作为高度,然后将 2 种颜色作为分类。

这是我的代码:
Reasonstats<-read.csv("bothstats.csv")
Reasonstats2<-as.matrix(Reasonstats[,3])


barplot((Reasonstats2),beside=T,col=c("darkblue","red"),ylab="number of 
species",names.arg=Reasonstats$Reason, cex.names=0.8,las=2,space=c(0,100)
,ylim=c(0,120))
box(bty="l")

现在我想要的是不必将两个条标记两次并将它们分开,我已经尝试将空间值更改为各种东西,但它似乎并没有将条分开。谁能告诉我我做错了什么?

最佳答案

使用 ggplot2:

library(ggplot2)
Animals <- read.table(
  header=TRUE, text='Category        Reason Species
1   Decline       Genuine      24
2  Improved       Genuine      16
3  Improved Misclassified      85
4   Decline Misclassified      41
5   Decline     Taxonomic       2
6  Improved     Taxonomic       7
7   Decline       Unclear      41
8  Improved       Unclear     117')

ggplot(Animals, aes(factor(Reason), Species, fill = Category)) + 
  geom_bar(stat="identity", position = "dodge") + 
  scale_fill_brewer(palette = "Set1")

Bar Chart

关于r - 做分组条形图的最简单方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17721126/

相关文章:

r - 如何使用PCA对高度相关变量进行时间序列预测?

r - ggplot2:stat_summary 在尝试将函数参数作为参数传递时抛出错误,而不是硬编码

android - 单个系列和单个渲染器的多个颜色条

r - 如何从给定的起点在 R 中进行爬山?

替换数据帧中的 NULL

python - 如何绘制不均匀数据点之间均匀间距的直方图?

javascript - 如何调整div的大小以填充所有空间

r - 通过 gganimate : conflict of view_follow & coord_flip 的动画条形图

r - 无法使用 install.packages 安装 R-forge 软件包