云雨图&小提琴图的作用
1. 云雨图(Half-Violin Plot)
定义
云雨图是一种结合了 小提琴图 和 散点图 的图形表现形式,其中:
- 一侧展示小提琴图(通常用于显示数据的分布密度)。
- 另一侧叠加散点图,展示每个数据点的原始数值分布。
特点
- 半小提琴图(half-violin):将传统小提琴图切为一半,通常位于图形的右侧或左侧。
- 散点图叠加:用于展示每个数据点的具体位置,从而避免分布密度掩盖数据细节。
作用
- 数据分布和细节并重:
- 小提琴部分展示数据的全局分布(如峰值和尾部情况)。
- 散点部分提供具体的观测点分布,帮助发现异常值或分布的离散程度。
- 易于分组对比:适合分组数据的可视化(如不同实验条件、类别变量)。
2. 小提琴图(Violin Plot)
定义
小提琴图是一种结合了 箱线图 和 核密度图 的数据可视化工具,用于描述数据的分布形态。
特点
- 中心部分包含一个 箱线图,显示分布的五数概要(最小值、第一四分位数、中位数、第三四分位数、最大值)。
- 两侧对称展示 核密度估计,表示数据的分布密度。
- 形状宽度反映数据分布的密集程度(宽的部分表示该范围内的数据点更多)。
作用
- 显示数据分布形态:
- 比单纯的箱线图更详细,能够直观地看到数据分布的偏态、峰值和多模态特征。
- 数据对比:
- 特别适合多个分组的数据比较。
- 不同宽度的区域展示了各分组的分布差异,例如分布是否对称、是否存在多个峰值。
- 整合数据摘要:
- 通过同时显示箱线图和核密度估计,小提琴图提供了数据的全景视角。
数据结构
云雨图代码
1. 导入库和读取数据
library(ggplot2)
library(dplyr)
library(RColorBrewer)
library(viridis)
library(ggpubr)
library(rstatix)
library(gghalves)
library(patchwork)
library(openxlsx)
data1 <- read.xlsx("aaa.xlsx")
data1$prob <- factor(data1$prob)
data1$outcome <- factor(data1$outcome)
data1$delay <- as.numeric(data1$delay)
-
加载库:
ggplot2
:主要用于数据可视化。dplyr
:用于数据过滤和处理。openxlsx
:读取 Excel 数据。- 其他库(如
gghalves
)提供了额外的绘图功能,如半小提琴图。
-
数据预处理:
- 使用
read.xlsx
读取 Excel 文件aaa.xlsx
。 - 将
prob
和outcome
转换为因子(分类变量),便于分组绘图。 - 将
delay
转换为数值型,以便用于数值分布图。
- 使用