r - 在 R 中使用带有分组条形图和 facet_wrap 的 ggsignif 时如何定义数据
问题描述
已编辑
我以完全错误的方式使用 ggsignif 包:我不想从条形图中计算显着性值,但我只想在条形图上绘制我已经从单独分析中得到的值。为此,这个视频帮助了我很多https://www.youtube.com/watch?v=30mqU2vcx68
老问题
你好,我想问一个关于R软件中ggsignif包的问题。我想使用 facet_wrap 在成对的条形图顶部显示重要的星星,我正在关注这个线程Using ggsignif with grouped bar graphs and facet_wrap not working,但我无法将相同的代码应用于我的图表。正如我附上的图片一样,我想在我绘制的条形之间进行比较,但我不知道如何定义我正在比较的数据。
我使用这段代码来构建我的图表:
df <- data.frame(Group = c("S1", "S1", "S1", "S1", "S2", "S2", "S2", "S2"),
Sub = c("A", "A", "B", "B", "A", "A", "B","B"),
col = c("red", "green", "red", "green","red", "green", "red", "green"),
Value = c(10,6,10,7,9,5,9,8))
ggplot(df, aes(x=Group, y=Value, fill=col)) +
scale_fill_manual("col", values = c("red" = "red", "green" = "green")) +
facet_wrap(~Sub) + coord_cartesian(ylim = c(0,15)) +
geom_bar(stat="identity", position=position_dodge())
你知道我如何在类似于这个的图中定义重要星的坐标吗?非常非常感谢你!
解决方案
显着性是指每组需要许多值的分布。但是对于每一组(例如 S1-green-A),您的数据集中只有一个值。因此,您绘制的是条形图而不是箱线图。您可以将更多值组合在一起,例如通过忽略颜色:
library(tidyverse)
df <- data.frame(
Group = c("S1", "S1", "S1", "S1", "S2", "S2", "S2", "S2"),
Sub = c("A", "A", "B", "B", "A", "A", "B", "B"),
col = c("red", "green", "red", "green", "red", "green", "red", "green"),
Value = c(10, 6, 10, 7, 9, 5, 9, 8)
)
df %>%
unite(Group2, Group, Sub) %>%
ggplot(aes(x = Group2, y = Value)) +
geom_boxplot() +
ggsignif::geom_signif(
comparisons = list(
c("S1_A", "S1_B"),
c("S1_A", "S2_A")
),
step_increase = 0.2
)
推荐阅读
- reactjs - React Bootstrap - 进度条的宽度太小
- jquery - 如何在nodejs中更改日期格式
- react-native - Is App considered to be a component in React Native?
- haskell - Haskell 代码找出数字的组合
- graphql - 在输入可以采用不同类型的地方制作 Graphql 输入
- intellij-idea - ScalaTestWithActorTestKit 未找到
- php - 我正在尝试向 url 添加一些不同的 GET 变量
- javascript - 如何从一个输入字段收集所有输入
- python - 如何在 Flask 蓝图中 mock.patch 一个函数?
- javascript - 从 React App 中删除未使用的 materialize-css 和 js 代码以提高效率