Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在R中绘制分组条形图的高度错误_R_Plot_Bar Chart - Fatal编程技术网

在R中绘制分组条形图的高度错误

在R中绘制分组条形图的高度错误,r,plot,bar-chart,R,Plot,Bar Chart,我正在尝试使用excel工作表中的以下数据集按scenerio创建分组条形图: Scenerio Migration Foraged Counter 1 0 741 1500 2 1 740 1500 3 200 475 1349 4 198 215 832 5 184 118 616 6

我正在尝试使用excel工作表中的以下数据集按scenerio创建分组条形图:

Scenerio Migration  Foraged Counter
1            0        741    1500
2            1        740    1500
3           200       475    1349
4           198       215    832
5           184       118    616
6           151        52    412
7           139        31    343
8           134        21    304
9           131        14    278
我的x轴应该是scenerio类型,y轴应该是平均分数。分组的列应进行迁移和搜索。我试过用几种不同的方法来运行它,但我一直得到这样的错误:“高度”必须是向量或矩阵。如何使用此数据集制作分组条形图

以下是一些尝试:

   1.  barplot(dat, col = c("darkblue", "red"), beside = TRUE, legend = rownames (dat))

   2.  barplot(dat, beside = T, ylim = c(0,1600), col = dat$Scenerio, axis.lty = "solid")

3. condition <- c(dat$Migration, dat$Foraged)
ggplot(dat, aes(x=dat$Scenerio, y=dat$Counter, fill=condition)) +geom_bar(position = position_dodge())
1。条形图(dat,col=c(“暗蓝色”、“红色”),旁边为真,图例为行名(dat))
2.条形图(dat,旁边=T,ylim=c(01600),列=dat$Scenerio,axis.lty=“solid”)

3.条件A
ggplot
解决方案将意味着将数据帧转换为更长的格式,例如:

library(tidyr)
图书馆(dplyr)
图书馆(GG2)
df%>%pivot_更长(-Scenerio)%>%
ggplot(aes(x=as.factor(Scenerio),y=value,fill=name))+
几何坐标(位置=位置减淡()

使用
barplot
的base r解决方案意味着转置数据帧并转换为矩阵,如下所示:


rownames(df)A
ggplot
解决方案将意味着将数据帧转换为更长的格式,例如:

library(tidyr)
图书馆(dplyr)
图书馆(GG2)
df%>%pivot_更长(-Scenerio)%>%
ggplot(aes(x=as.factor(Scenerio),y=value,fill=name))+
几何坐标(位置=位置减淡()

使用
barplot
的base r解决方案意味着转置数据帧并转换为矩阵,如下所示:

rownames(df)“尝试以几种不同的方式运行此功能”。。。它有助于了解您尝试了什么,原因有两个:(1)我们的答案或注释可以专门针对您尝试的代码;(2)它展示了在问题上的努力。虽然#1肯定是这两个问题中更重要的一个,但问题中缺少尝试代码可能会让人觉得没有任何努力。谢谢(但对#1更重要的是……因为我们看不到您的代码,所以无法指出错误。)“尝试了几种不同的方式运行此程序”。。。它有助于了解您尝试了什么,原因有两个:(1)我们的答案或注释可以专门针对您尝试的代码;(2)它展示了在问题上的努力。虽然#1肯定是这两个问题中更重要的一个,但问题中缺少尝试代码可能会让人觉得没有任何努力。谢谢(但对于#1…更重要的是,由于我们没有看到您的代码,因此无法指出错误。)