科研绘图模板之小提琴图

2024-01-23  本文已影响0人  Bioinfor生信云

小提琴图(Violin Plot)是一种数据可视化图表,它结合了箱线图和核密度图的特点,用于展示数据分布和概率密度。小提琴图通常用于比较多个组或类别之间的数据分布,以及观察单个变量的分布情况。

以下是小提琴图的主要组成部分和特点:

  1. 小提琴形状: 小提琴图的主体部分是一组垂直排列的“小提琴”形状,每个小提琴代表一个数据组或类别。小提琴的宽度反映了数据在该位置的密度,较宽的部分表示更多的数据点。

  2. 箱线图: 每个小提琴图的中间部分通常包含一个箱线图,用于显示数据的中位数、四分位数和可能的异常值。这有助于了解数据的集中趋势和离散程度。

  3. 核密度估计曲线: 小提琴图的两侧是核密度估计曲线,用于展示数据分布的概率密度。这些曲线帮助观察数据的整体形状,并识别可能存在的多个峰值。

  4. 数据点: 有时,小提琴图上会显示实际数据点,以更清晰地表示个别数据值。

小提琴图适用于以下情况:

小提琴图在数据分析和可视化中广泛应用,特别是在统计学和数据科学领域,以提供对数据分布和变异性的更全面的理解。

示例

ggplot(iris, aes(Species, Sepal.Length)) +
  geom_violin(aes(fill = Species)) +
  geom_boxplot(width = 0.1) +
  geom_point(size = 0.5,
             position = position_jitter(width = 0.15)) + 
  geom_signif(comparisons = list(c("setosa", "versicolor"), 
                                 c("versicolor", "virginica")),
              map_signif_level = T,
              y_position = c(7.3, 8.2)) +
  scale_fill_npg() +
  xlab('') +
  theme_classic()

解释各部分:

  1. ggplot(iris, aes(Species, Sepal.Length)): 创建一个ggplot对象,指定数据集为iris,x轴为Species,y轴为Sepal.Length

  2. geom_violin(aes(fill = Species)): 添加小提琴图,按照Species进行填充色彩。

  3. geom_boxplot(width = 0.1): 添加箱线图,用于显示数据的中位数、四分位数和可能的异常值。

  4. geom_point(size = 0.5, position = position_jitter(width = 0.15)): 添加散点图,使用抖动(jitter)来避免点的重叠。

  5. geom_signif(comparisons = list(c("setosa", "versicolor"), c("versicolor", "virginica")), map_signif_level = T, y_position = c(7.3, 8.2)): 添加统计学显著性标记,比较setosa和versicolor以及versicolor和virginica。y_position参数设置标记的位置。

  6. scale_fill_npg(): 设置填充颜色的调色板,这里使用了NPG(Nature Publishing Group)样式,具体样式可以根据需要更改。

  7. xlab(''): 将x轴标签设为空。

  8. theme_classic(): 使用经典的主题风格。

这段代码综合使用了小提琴图、箱线图和散点图,通过可视化展示鸢尾花不同种类的萼片长度分布,同时添加了统计学显著性标记以强调差异。

上一篇 下一篇

猜你喜欢

热点阅读