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

使用ggplot基于两组不同向量绘制倾向性得分重叠直方图

不等长分组线性化PS得分ggplot绘图数据整理及绘图方案

核心数据整理逻辑

ggplot绘图要求输入长表结构数据,针对两组长度不同的线性化倾向性得分(PS),只需分别为两组数据添加分组标识后按行合并即可,无需强制两组样本量一致。

具体实现步骤

假设你已完成PS模型计算,得到两个独立的线性化PS得分向量:男性组ps_male、女性组ps_female,两组长度不同。

  1. 构建适配ggplot的长表数据集
library(tidyverse)

# 合并两个不等长向量为长表数据框
ps_plot_data <- bind_rows(
  # 男性组数据,标注分组为"男性"
  data.frame(linear_ps = ps_male, gender = "男性"),
  # 女性组数据,标注分组为"女性"
  data.frame(linear_ps = ps_female, gender = "女性")
)
  1. 绘制符合期刊要求的重叠直方图
ggplot(ps_plot_data, aes(x = linear_ps, fill = gender)) +
  # 设置半透明避免遮挡,position设为identity实现重叠展示
  geom_histogram(alpha = 0.6, position = "identity", bins = 15, color = "black", linewidth = 0.2) +
  # 期刊通用极简主题
  theme_bw(base_family = "serif", base_size = 12) +
  labs(
    x = "线性化倾向性得分",
    y = "样本频数",
    fill = "性别分组"
  ) +
  # 可选:添加分组密度曲线辅助展示重叠程度
  geom_density(aes(y = after_stat(count * (max(linear_ps) - min(linear_ps))/15), alpha = 0.3)

参数调整说明

  • 可通过修改bins参数调整直方图分箱数量,适配你的数据分布特征
  • 可通过theme()函数调整字体、坐标轴刻度、图例位置等样式,匹配目标期刊的格式要求
  • 若不需要密度曲线可直接删除对应代码行

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 23:45:03