04 Peak 可视化与多样本比较
04 Peak 可视化与多样本比较
本章把 ChIPseeker + DiffBind 的结果变成能直接用于论文的图。
配套脚本 epi04_visualization_sci.R 输出 6 张图:
Rscript scripts/epigenomics/epi04_visualization_sci.R
每张图看什么
图 1:每个样本的 peak 宽度分布。TF ChIP-seq 的 narrow peak 通常 100-500bp;组蛋白修饰的 broad peak 可以到几 kb。
图 2:5 个样本的基因组区域分布对比。AR(TF)和 CBX6/CBX7(chromatin reader)的分布模式不同。
图 3:AR 100nM 的 peak 在全基因组上的覆盖密度。某些染色体区域 peak 特别密集,可能对应 super-enhancer 或基因密集区。
图 4:AR 三个剂量的 consensus peak 重叠。"三个剂量都有"的是核心结合位点;"只在 100nM 出现"的是剂量依赖的新增位点。
图 5:DiffBind 差异结合位点的基因组区域注释。差异位点主要落在哪里(启动子 vs 增强子)决定了它们的功能解读方向。
图 6:差异结合位点的 fold change vs 到最近 TSS 的距离。靠近 TSS 的位点(启动子区域)和远离 TSS 的位点(增强子区域)可能有不同的 fold change 分布。
下载资源
常见坑
坑 1:peak 宽度做 boxplot 不取 log
peak 宽度分布常跨 2-3 个数量级(200bp 到 100kb),直接 boxplot 大部分箱子被压扁。scale_y_log10() 是默认操作。
坑 2:基因组区域饼图比例没归一化
10 个样本各自的 peak 数差很多,直接画占比饼图看上去都差不多,真实差异被绝对数量稀释。改成堆叠条形图 + 百分比标签。
坑 3:覆盖度 plot 用 raw counts
不同样本测序深度差几倍,raw count 覆盖度图没有可比性。用 deepTools 的 bamCoverage --normalizeUsing CPM/RPGC 做归一化后的 bigWig,再画。
坑 4:fold change vs distance to TSS 不区分方向
差异 peak 的 FC 有正有负(gained vs lost),混在一张图里看趋势会被相互抵消。用 facet 或颜色把 gained / lost 分开。
坑 5:导出 PNG 时分辨率默认
ggsave("fig.png") 默认 dpi=300、单位 inch — 对 panel 图够用,但单图会偏小。论文用 dpi = 600, width = 6, height = 4, units = "in"。
下一步
接着深入:
- 05 Motif 富集与 HOMER — 把 peak 上的序列拿去做 motif 富集
- 08 表观组与转录组的整合 — 这些可视化最终都要回到表达数据上
横向延伸:
- FigCode peak-anno — peak 注释饼图的可重用模板
- FigCode diffbind-ma — DiffBind MA 图的通用代码