再更新10个章节,《保姆级R可视化教程4.0》来了!
更新后,《保姆级R可视化教程4.0》共计59个章节。
本次更新10个章节,通过复现Nature、Science、Nature Microbiology、nature communications等10篇顶级期刊中的多张图表,进一步掌握R可视化这个小技能!
部分内容,
3层Sankey Diagram
......
ggplot(
df_alluvial,
aes(
x = layers, # 横轴:层级
stratum = regions, # 节点类别
alluvium = alluvium, # 流向 ID
y = value, # 流量大小
fill = regions, # 按类别填充颜色
label = regions # 节点标签
)
) +
# 设置层级顺序与间距
scale_x_discrete(
limits = c("layer1", "layer2", "layer3"),
labels = c("Layer 1", "Layer 2", "Layer 3"),
expand = c(0.1, 0)
) +
# 绘制流向
geom_flow(
width = 1/4,
alpha = 0.6
) +
......
用于可视化不同节点间流动关系的图表,通过宽度不一的流动带直观表示数量大小,展示从一个状态到另一个状态的转移或分布过程。其特点是起始流量与结束流量相等,主支和分支的宽度总和保持平衡,体现能量守恒。流动带的宽度按比例反映分支流量占比,不同节点的宽度则对应特定状态下的流量规模,类似于能量守恒定律。
极坐标堆叠柱状图
......
# 堆叠柱状图
geom_rect(data = data_final,
aes(xmin = id - 0.4, xmax = id + 0.4,
ymin = base, ymax = height, fill = VLM_Category),
color = "black", size = 0.2, alpha = 1) + # 添加黑色边框,增加透明度
# 数值标签
geom_text(data = label_data,
aes(x = id, y = mid_height, label = label_value),
size = 2, color = "black", vjust = 0.5) +
# 样本名称标签 - 移动到柱子正上方,保持角度计算
geom_text(data = sample_label_data,
......
一张全球主要河流三角洲的垂直地面运动(VLM)分布极坐标堆叠柱状图。展示40个全球主要河流三角洲(如亚马逊河、长江、尼罗河等)在4个不同VLM速率区间内的面积百分比分布:
外层标签,40个具体的河流三角洲 内层标签,5个洲(NA-北美洲、SA-南美洲、Europe-欧洲、Africa-非洲、Asia-亚洲) 颜色,4个VLM速率类别
分面图+分组图+Spearman秩相关系数+假设检验的p值
......
legend.position = "none",
panel.border = element_rect(color = "gray70", fill = NA, size = 0.8),
plot.title = element_text(size = 16, face = "bold", hjust = -0.05)
) +
coord_cartesian(clip = "off")
return(p)
}
# 创建两个图形
figa <- create_plot("EDF5a", "a")
figb <- create_plot("EDF5b", "b")
# 使用patchwork的design参数精确控制布局
# 定义布局设计:A代表figa,B代表figb,#代表空白
layout_design <- "
AAAAA
BBBB#
"
# 应用自定义布局
combined_plot <- figa + figb +
plot_layout(design = layout_design, heights = c(1, 1))
# 显示组合图形
print(combined_plot)
每个子图中添加分组散点图(Control为绿色、SCZ为红色); 每个子图添加整体数据(All)的趋势线+置信区间(灰色阴影); 每个子图添加统计结果标签Spearman秩相关系数(ρ)、假设检验的p值(p),每组标签按分组设置颜色(All组标签为灰色,Control组标签为绿色、SCZ组标签为红色);
分面图+分组图+Wilcoxon秩和检验p值
......
# 添加统计显著性标注
stat_pvalue_manual(
statistical_test,
hide.ns = FALSE,
label = "p.adj.short"
) +
# 设置坐标轴标签
labs(
x = "RCB class",
y = "Predictor score"
) +
# 应用自定义颜色
create_custom_fill_scale() +
# 修改x轴刻度标签
scale_x_discrete(
breaks = c("pCR", "RCB-I", "RCB-II", "RCB-III"),
labels = c("pCR", "I", "II", "III")
) +
# 移除图例
guides(fill = "none") +
# 设置主题
theme_bw(base_size = 16) +
......
箱线图显示了六个模型在训练集(training,第一行,n = 147例)和验证集(validation,第二行,n = 75例)中,跨越不同RCB类别所获得的预测因子评分的分布情况。 箱体部分表示四分位距,其中的中线为中位数,须线延伸至箱体外部最大为四分位距1.5倍的范围,异常值以圆点表示。P值为双侧检验结果,并经过FDR校正的Wilcoxon秩和检验得到。
分组图+半小提琴图+箱线图+抖动散点图
.......
# 半小提琴图层
geom_flat_violin(
adjust = 1.5,
trim = TRUE,
alpha = 0.5,
size = 0.3,
position = position_nudge(x = 0.2, y = 0)
) +
# 散点图层(抖动处理)
geom_point(
alpha = 0.2,
show.legend = FALSE,
size = 1.5,
shape = 20,
.......
该图结合了半小提琴图、箱线图和抖动散点图的复合图表,用于直观展示和比较不同样本培养阳性天数下(2~5天),saliva样本的Ct值和nasal样本的CN值的分布情况。
加入学习,备注:299
(加入学习,收费,备注:299)