You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R中创建以0.5为中心的响应均值条形图?

在R中创建以0.5为中心的条形图

步骤1:准备数据

先把你的均值数据转换成R可识别的数据框:

# 创建数据框
df <- data.frame(
  Item = c("a", "b", "c", "d", "e", "f", "g", "h", "i", "j"),
  Mean = c(0.66, 0.37, 0.36, 0.12, 0.42, 0.68, 0.19, 0.27, 0.11, 0.37)
)

步骤2:计算偏离0.5的差值

核心逻辑是算出每个均值与0.5的偏差值——正偏差对应条形向上延伸,负偏差对应向下延伸:

# 计算偏差值
df$deviation <- df$Mean - 0.5

步骤3:用ggplot2绘制条形图

如果还没安装ggplot2包,先运行install.packages("ggplot2"),再执行以下代码生成图表:

library(ggplot2)

ggplot(df, aes(x = Item, y = deviation, fill = deviation > 0)) +
  # 绘制条形
  geom_col(width = 0.7) +
  # 添加0.5对应的中心参考线
  geom_hline(yintercept = 0, color = "black", linetype = "dashed") +
  # 将y轴刻度转换回原0-1尺度的均值
  scale_y_continuous(
    breaks = seq(-0.4, 0.4, 0.1),
    labels = seq(0.1, 0.9, 0.1)
  ) +
  # 用颜色区分均值大于/小于0.5的项目
  scale_fill_manual(values = c("FALSE" = "#6baed6", "TRUE" = "#fc8d59"), 
                    labels = c("均值<0.5", "均值>0.5")) +
  # 设置图表标签与标题
  labs(
    x = "项目",
    y = "均值(0-1尺度)",
    fill = "类别",
    title = "以0.5为中心的均值条形图"
  ) +
  # 调整主题样式
  theme_minimal() +
  theme(plot.title = element_text(hjust = 0.5))

效果说明

  • 图中虚线对应原均值的0.5位置,条形向上代表均值大于0.5,向下代表均值小于0.5
  • y轴刻度已转换回原0-1尺度的数值,可直接读取每个项目的实际均值
  • 颜色区分让两类项目的分布更直观

内容的提问来源于stack exchange,提问作者heatheryawney

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 03:57:14