该内容已被发布者删除 该内容被自由微信恢复。
文章于 3月31日 下午 1:50 被检测为删除。
被用户删除
其他
R语言绘图 | 使用ggstatsplot绘制小提琴图
小提琴图
小提琴图(Violin Plot)用于可视化连续型数据的分布,事实上它是箱形图和核密度图的混合体。它的外形类似于小提琴,由中间的厚实部分和两端的细长部分组成。这个厚实的部分代表数据的主要密度区域,而细长的部分表示数据的稀疏区域。与此同时,小提琴图还包含盒形图(箱线图)的元素,显示数据的五数概括,如最小值、第一四分位数、中位数、第三四分位数和最大值。
小提琴图将箱形图和核密度图的优点结合在一起,既能展示数据的分布情况,又能够直观地显示数据的五数概括,同时避免了直方图需要手动选择分组的缺点。这种组合使得小提琴图在数据可视化中成为一种强大的工具,特别适用于比较不同组之间的数据分布情况,以及发现数据的异常值和趋势。
准备
加载R包:
# 加载所需的包
library(ggstatsplot) # 用于创建统计图
library(palmerpenguins) # 用于获取企鹅数据
library(tidyverse) # 用于数据处理
加载和清洗数据:
# 从palmerpenguins包中获取企鹅数据
data("penguins", package = "palmerpenguins")
# 删除数据中的缺失值
penguins <- drop_na(penguins)
绘图
绘制基础图形:
plt <- ggbetweenstats(data = penguins,
x = species,
y = bill_length_mm)
添加标签和标题:
# 添加标签和标题
plt <- plt +
labs(
x = "Penguins Species", # x轴标签
y = "Bill Length", # y轴标签
title = "Distribution of bill length across penguins species" # 图标题
) +
# 自定义主题
theme(
# 字体样式
text = element_text(family = "Roboto", size = 8, color = "black"),
# 图标题样式
plot.title = element_text(
family = "Lobster Two",
size = 20,
face = "bold",
color = "#2a475e"
),
# 主副标题样式
plot.subtitle = element_text(
family = "Roboto",
size = 15,
face = "bold",
color="#1b2838"
),
plot.title.position = "plot", # 与默认稍有不同
# 轴文本样式
axis.text = element_text(size = 10, color = "black"),
# 轴标题样式
axis.title = element_text(size = 12)
)
自定义主题:
# 进一步自定义主题
plt <- plt +
theme(
# 隐藏轴刻度
axis.ticks = element_blank(),
# 轴线样式
axis.line = element_line(colour = "grey50"),
# 主网格线样式
panel.grid = element_line(color = "#b4aea9"),
# 隐藏次要网格线
panel.grid.minor = element_blank(),
# 隐藏x轴的主要网格线
panel.grid.major.x = element_blank(),
# y轴的主要网格线样式
panel.grid.major.y = element_line(linetype = "dashed"),
# 面板背景样式
panel.background = element_rect(fill = "#fbf9f4", color = "#fbf9f4"),
# 图背景样式
plot.background = element_rect(fill = "#fbf9f4", color = "#fbf9f4")
)
参考资料:https://r-graph-gallery.com
大家有兴趣可以加群,可以在群里讨论,学习,共同进步!