pythonic生物人

复现Nature正刊图,换数据即可用!

本次使用R复现Nature上的Upset图!

s41586-021-04278-5原图
s41586-021-04278-5原图
❤️复现效果图❤️
❤️复现效果图❤️

该图为一种特殊的venn图,当集合数量较多或关系复杂的情况下,能够有效解决Venn图重叠过多的问题,专业称作Upset图。

✅怎么读Upset图?

下面通过同效果的左侧venn图类比右侧upset图。

Image

下面通过R代码实现一下Upset图!

✅R绘制Nature同款Upset图

# 核心代码
# 绘制 UpSet 图
upset_plot <- upset(
  data                = upsetr_data,  # 输入数据
  nsets               = n_set_cols,    # 集合数量
  nintersects         = NA,            # 显示所有交集
  order.by            = "freq",        # 按频数排序
  empty.intersections = NULL,          # 不显示空交集

# 布局参数
  mb.ratio            = c(0.5, 0.5),   # 主图与集合条比例
  point.size          = 2,             # 矩阵点大小
  text.scale          = 1.2,           # 字体缩放

# 颜色设置
  sets.bar.color      = "#56B4E9",     # 集合条颜色
  matrix.color        = "#474954",     # 矩阵点颜色
  shade.color         = "#7284A8",     # 阴影颜色

# 标签
  sets.x.label        = "",

# 查询高亮
  queries             = query_list,
  query.legend        = "top"# 图例位置
)

# 输出图形
upset_plot
Image

原文中,该UpSet图,用于展示 driver gene mutations 的共现模式及其与治疗反应的关系。

  • 左侧条形图表示各 driver 基因突变在样本中的发生频率。
  • 下方矩阵显示不同基因突变组合的共现情况。
  • 上方条形图表示相应突变组合的绝对频数,并按治疗反应分组(pCR、RCB-I、RCB-II、RCB-III)进行区分,用于比较不同突变共现模式在不同疗效结局中的分布差异。

本期结束!


获取绘图代码+测试数据+数据处理方法+依赖包安装方法,

👇(备注:299)

图片

-推荐阅读-

👉matplotlib教程:20w字+数百张图形+1W行代码+详细代码注释+学习交流群

图片

👉seaborn教程:12.3万字+500多张图形+8000行代码

图片

👉R可视化教程:39个章节+20w字+数百张图

图片
图片