r - 错误:`position_jitterdodge()` 需要至少一种审美才能躲避
问题描述
我尝试绘制一个条形图分组图,但我不能,我的错误是,“position_jitterdodge()
需要至少一种美学来躲避”。谁能帮我?这是我的数据示例和我尝试绘制条形图的代码。我的预期输出如下图所示。
library(ggpubr)
d<-data.frame(Average=c(3,1.5,4, 6,
2,5.4,3.1,0.9,
4.6,3.3,2.8,1.9,
2.1,3.7,4.4,5.2),
Size=c("1750","1750","1750","1750",
"2000","2000","2000","2000",
"2500","2500","2500","2500",
"3000","3000","3000","3000"),
Group=c("P1","P1","P1","P1",
"S1","S1","S1","S1",
"P2","P2","P2","P2",
"S2","S2","S2","S2"))
ggbarplot(
d, x = "Size", y = "Average",
add = c("mean_sd", "jitter"),
add.params = list(shape = "supp"),
fill= "Group", palette = c("#807F7F", "#BF504D"),
position = position_dodge(0.8)
)
解决方案
您的代码有几个问题:
group
有 4 个值,只分配了 2 种颜色。- 您的数据中不存在变量“supp”。
否则,您的代码应该可以工作:
library(ggpubr)
#> Loading required package: ggplot2
d<-data.frame(Average=c(3,1.5,4, 6,
2,5.4,3.1,0.9,
4.6,3.3,2.8,1.9,
2.1,3.7,4.4,5.2),
Size=c("1750","1750","1750","1750",
"2000","2000","2000","2000",
"2500","2500","2500","2500",
"3000","3000","3000","3000"),
Group=c("P","P","S","S", "P","P","S","S", "P","P","S","S","P","P","S","S")
)
ggbarplot(
d, x = "Size", y = "Average",
add = c("mean_sd", "jitter"),
add.params = list(shape = "Group"),
fill= "Group", palette = c("#807F7F", "#BF504D"),
position = position_dodge(0.8)
)
由reprex 包于 2020-10-02 创建(v0.3.0)
推荐阅读
- javascript - 如何使用javascript在斜线后获取参数
- selenium - 使用 Selenium 和 C# 以不同的用户身份运行 chrome
- eclipse - 即使更改为新帐户,Git 也会在提交时使用旧凭据
- dns - Google Cloud Platform:如何验证要托管在 Bucket 上的静态网站的域?
- python - 如何将 3D RGB 标签图像(在语义分割中)转换为 2D 灰度图像,并且类索引从 0 开始?
- c# - c#.net 字符串到日期时间
- javascript - 单击chrome中打印的取消按钮后,HTML选择重置
- javascript - Typed.JS 清除完整的短语并使用打字功能开始新的短语
- reactjs - ReactJs 调用 api 后不生成数据进入视图
- c# - 如何一次生成多个报告