新闻详情

新闻详情

首页 / 资讯中心 / 详情

单细胞通讯结果可视化:配体-受体联合热图在线绘制指南

发布时间:2026/9/15 10:12:23来源:尧图网络
单细胞通讯结果可视化:配体-受体联合热图在线绘制指南
做细胞通讯分析这几年我最大的感受是跑结果容易把结果画明白难。CellChat或CellPhoneDB一跑动辄几十上百条显著的配体-受体互作对丢给别人一张密密麻麻的默认气泡图对方往往盯半天也不知道该看哪里。后来我习惯在项目汇报和论文里换成“配体-受体联合热图”——左边一列配体表达右边一列受体表达中间用连线把成对的基因牵起来生物学逻辑清晰图面也干净得多。这篇就专门聊这种图怎么在线画从底层逻辑到实操参数再讲几个我踩过的高频坑。适合看这篇的朋友手里已经有单细胞转录组数据或者已经跑完CellChat、CellPhoneDB等细胞通讯分析正愁怎么把结果可视化得更有说服力的研究者。特别是关注肿瘤微环境里巨噬细胞与T细胞的串扰、神经退行中的胶质互作、发育过程里相邻细胞群信号协调的课题这张图能帮你在汇报时少费很多口舌。1. 联合热图的图表逻辑这张图把什么信息折叠成了两列1.1 为什么单细胞通讯结果需要二次可视化单细胞转录组测的是RNA不是蛋白更看不到一个细胞分泌的配体真的结合到另一个细胞受体上的物理过程。所以配体-受体互作分析本质上是一种基于共表达的可靠推断A细胞群表达配体基因、B细胞群表达对应受体基因在统计检验显著的前提下我们认为两者之间存在潜在的通讯可能性。CellChat、CellPhoneDB这类工具就是在这个逻辑上做排列检验和均值比较然后输出一份包含配体名、受体名、来源细胞群、靶细胞群、表达均值、p值、互作强度等字段的大表。问题是这个表的信息量大到超出人眼的处理能力。我之前处理过一个12个细胞群的样本CellChat运行完给出的显著搭档接近200对如果全塞进一张图纵轴标签密密麻麻挤在一起字号缩到6磅都放不下别说评审我自己都看不下去。这种时候必须做“减法和放大”选定一组你最关心的细胞群对把配体侧和受体侧拆成两条平行的信息通道让彼此之间的对应关系用连线直接呈现出来。1.2 带连线热图的几个信息层拆解一张完整的带连线配体-受体联合热图表面看是热图加线段实际上至少包含四个信息层配体表达层通常位于左侧记录来源细胞群sender中该配体的平均表达水平颜色深浅或格子大小映射表达均值表达越高单元格颜色越深。受体表达层通常位于右侧记录靶细胞群receiver中受体的表达情况颜色编码逻辑和配体侧一致。连线层位于中间把属于同一互作对的配体和受体用一条连线连接起来这是整张图最关键的视觉引导元素直接告诉读图者“左边这个基因和右边那个基因是一对搭档”。显著性标注层有些图会用不同的线色或加粗来标记p值范围比如p小于0.001的连线画成实心深色p在0.01到0.05之间的画成浅色虚线这样一眼便能看出最核心的信号轴。连线的存在价值在于当配体-受体对的数量较多时序列顺序会有交叉和跳跃没有连线读者就得靠行名去猜哪两个对应体验非常糟糕。而一旦有了连线哪怕配对在纵轴上相隔十行目光也能顺着线快速定位到对应关系。2. 在线可视化工具实测从通用绘图站到专门模块2.1 各平台对比与我的实测体感在线工具这几年确实发展得很快不再是非得上R不可。我陆陆续续试过几个主流产品这里列个粗略的对比表提供一个体感参考具体界面和模块设置不同版本可能略有差异。平台或方式是否支持连线数据上传要求适合场景我的实测体感SRplot系列模块部分模块支持表达矩阵分组表配体受体关系表快速验证结果参数直观但大矩阵提交后需要排队Sangerbox在线平台导出后可再编辑格式比较宽松日常出图界面友好默认配色偏饱和需要调CellChat官方R工具自由定制需要R环境发表级精细调整功能最强学习门槛也最高CCPlotR等R扩展包支持连线需要基础代码能力批量处理多组数据效率高依赖包的版本要盯紧很多人觉得在线工具不用写代码一定比R简单得多。实际用下来我并不这么看。在线平台本质上只是把分析脚本封装到了网页后台你依然得明白它内部在做什么计算——把矩阵和分组信息统计成平均表达、跑显著性检验、再映射成图形属性。如果你不了解这个逻辑只是把表格传上去乱点一通出来的图往往不是空白就是满屏报错。2.2 我最终稳定的方案在线计算本地矢量补线我也得说句实在话目前大部分在线平台默认输出的配体-受体可视化严格意义上并不是“左右双热图中间连线”这个布局。很多平台给的是气泡图、点图、或者上下对称热图需要你在参数里找一找有没有类似“show connection”或者“with linking line”的选项。所以我的稳定策略是拆成两步在线平台负责完成表达统计和显著性计算再导出高清底图如果平台自带连线功能那直接打开如果平台没有这个功能我就导出矢量格式的PDF/SVG回到本地用R或矢量绘图工具把互作对应的连线补上去。这里有一个极其重要的技术细节导出时千万别只存PNG位图。底图一旦是位图后期加线时缩放几次就糊成一团连线的起止坐标也只能靠肉眼估精度很差。我习惯优先导出PDF或SVG后期在矢量层上叠加连线无论论文排版时怎么缩放都清晰。3. 在线绘制一份带连线联合热图的实操步骤3.1 第一步整理好两类必要输入绝大多数在线平台都绕不开两个文件表达矩阵和分组信息。表达矩阵的常见格式是第一列为基因名后边的列是细胞编号值可以是log归一化后的表达量。Genecell_1cell_2cell_3CXCL122.130.004.56CXCR41.873.210.00CCL50.452.101.23分组文件则是两列细胞编号和细胞群名称告诉平台每个细胞属于哪一群。cellgroupcell_1Macrophagecell_2T_cellcell_3Macrophage这个环节最容易翻车的是细胞编号不一致。Excel默认的自动格式转换是个大坑一些较长的编号会被转成科学计数法显示比如“1.23E17”再导出CSV后文件里存的就是被处理过的值和原始细胞编号对不上。我踩过一次后学乖了处理这类表格全部用文本编辑器或专门的数据处理脚本绝不用Excel直接改细胞编号列。3.2 第二步选择配体受体数据库和过滤阈值平台内置的配体-受体数据库一般是CellPhoneDB或CellChatDB这些公开注释库覆盖了人类和小鼠的大部分已知互作对。如果你做的是非模式物种就得自己准备一张自定义的配体受体关系表至少要包含三列配体基因名、受体基因名、互作对名称。过滤阈值通常涉及两个维度。表达过滤负责排除那些在细胞群中几乎不表达的基因比如某基因只在不到10%的细胞中被检测到即使均值为正大概率也是零膨胀噪声显著性过滤则使用排列检验得到的p值常用线划在0.05配对特别多时可以收紧到0.01只留下更稳定更核心的信号。我一般先把p值设定为0.05跑一遍全局看看整体信号长什么样再根据课题关注的故事收紧到0.01。千万不要一开始就弄一个特别极端的阈值不然图上只剩下零零散散三五个格子反而没法判断数据质量。3.3 第三步在选定的在线页面里走完绘制流程虽然不同平台的界面风格有差异但操作主线是可以归纳的。我通常按下面这七步走进入平台找到配体受体相关模块关键词一般是“Ligand-receptor pairs”或“Cell communication”。上传表达矩阵文件确认行列结构是否符合平台要求。上传分组文件核对细胞编号匹配情况平台一般会返回匹配报告。选择物种信息。这一步会决定基因名大小写规则人和鼠的symbol命名规则不同选错会导致大量基因匹配不上。选择配体-受体数据库。设定p值阈值和表达阈值可以选择是否过滤低表达基因。选择可视化形式如果平台支持联合热图布局就打开“显示连线”选项然后提交任务。等待过程确实考验耐心。大部分在线平台在细胞数量超过5万时运行明显变慢队列一长可能还要排队。我的经验是超过3万个细胞时先在本地用Seurat的AverageExpression把每个细胞群的平均表达算好再把这个压缩过的矩阵传到在线平台。这样做虽然牺牲了细胞层面的统计检验能力但显著降低了等待时间出图结果也更稳定。3.4 第四步导出格式的选择和后期编辑出图后先别急着截图。检查如下细节配体侧和受体侧的分组是否正确、行列标签是否完整、颜色范围是否把低表达区域压成了大片空白。确认无误后再导出我的建议如下发表级高清图选择PDF或SVG矢量格式后期可编辑。快速预览交流PNG可以但分辨率至少300dpi。备用数据表把平台返回的中间计算表也一并下载。我吃过亏当时只下载了图片后来想换种可视化形式只能重新上传全部数据再来一遍非常浪费时间。4. 阈值选择、配色和解读逻辑4.1 阈值和“过拟合”的博弈阈值设得松图上全是低表达基因充数的格子整张图颜色均匀没有重点阈值设得太紧真实的核心信号也被一并过滤掉。这其实和统计建模里的“欠拟合-过拟合”很像需要找平衡点。我的判断习惯是观察“目标细胞群对”中排名前20到30个配体-受体对是否落在关注的生物学通路里。举个例子巨噬细胞和CD8 T细胞的互作分析里MIF、COPA这类管家型互作常常占据前列但课题关心的是CXCL9-CXCR3这个趋化轴。如果默认数据库把上面的管家信号都算进来了反而把核心信号淹没我就改用自定义的配体受体列表把它限定在自己关注的趋化因子家族再去过滤阈值效果立竿见影。4.2 配色方案直接决定读图效率在线平台默认的渐变色大多是红蓝映射从深蓝到深红。这种配色不是不能用但低表达区域的色差跨度太大而且深蓝和深红很容易互相“打架”导致p值的视觉权重被颜色扭曲。我现在常调的方案是设置浅色中线把低表达值压缩到白色或浅灰色区域只有真正高表达的格子才显示橙色到红色的梯度。三步走低段白色到浅橙对应表达均值的低分位。中段橙到红对应中等表达是图上最需要看清的部分。高段红到深红只保留那些明显高表达的信号。这样调下来的图第一眼就能锁定最强的几条信号轴不会让视觉重点被零表达的空格子带走。4.3 如何快速读懂一个信号轴拿到一张带连线的联合热图我的阅读习惯是沿“配体→受体”方向走。比如左边是巨噬细胞配体表达右边是CD8 T细胞受体表达如果看到CXCL9格子颜色深对应的CXCR3格子也不浅中间的连线还很明显那基本可以初步判断该样本中存在巨噬细胞通过CXCL9-CXCR3轴招募或激活CD8 T细胞的可能性。需要注意的是这只是视觉层面的推理起点。一张热图说明不了因果关系后续还需要回到原始数据验证这两个细胞群间的比例有没有随条件变化、配体受体下游的转录因子有没有激活、功能实验里阻断这条轴会不会改变细胞迁移或者杀伤表型。可视化帮你提出假说验证是另一套流程。5. 报错排查清单以及本地补连线的备用方案5.1 三个真实且高频的报错先聊报错在线平台失败的原因比你想象中要集中。我遇到最多的三个问题是报错一细胞编号不一致。报错信息通常是“count mismatch”或者匹配成功后结果图尺寸异常。排查时用文本编辑器打开表达矩阵和分组文件对比前几行细胞编号注意平台是否区分大小写。还有一种隐蔽情况Excel把长编号转成了科学计数法看起来差不多实际值已经完全变了。报错二基因名不匹配。平台内置数据库用的是标准HUGO基因名你的矩阵里是小写字母或带版本号的Ensembl ID匹配率会惨不忍睹。处理方式是在本地用biomaRt或clusterProfiler转换后再上传。最好不要用Excel的查找替换来做基因名转换它会把类似名字的子串一并替换造成连锁错误。报错三数据量太大导致任务挂断。十万细胞的表达矩阵打包成CSV可能有几百MB大多数在线平台对上传文件有大小限制。对策是先在本地做细胞群层面的平均表达矩阵相当于把数据从“单细胞分辨率”降维到“细胞群分辨率”再上传到在线工具。数据变小之后计算速度明显加快出图也更稳定。5.2 在线工具补不了连线用R代码快速修补最后分享一个我常用的本地补线方案。很多时候在线平台已经给出了漂亮的左右热图就差中间那几根连线。我的做法是直接用ggplot2重新画一版布局再叠加geom_segment或者geom_curve把配对连起来。library(ggplot2) # 构建设想的配体受体数据框 lr_data - data.frame( ligand c(CXCL12, CXCL9, CCL5), receptor c(CXCR4, CXCR3, CCR5), l_expr c(3.2, 2.8, 1.9), r_expr c(2.5, 3.0, 2.1), p_value c(0.001, 0.005, 0.02) ) n - nrow(lr_data) # 把配体放在x1列受体放在x2列y轴按排名展开 plot_data - data.frame( label c(lr_data$ligand, lr_data$receptor), expr c(lr_data$l_expr, lr_data$r_expr), x rep(c(1, 2), each n), y c(seq_len(n), seq_len(n)) ) p - ggplot(plot_data, aes(x x, y y, fill expr)) geom_tile(color white, width 0.6, height 0.8) geom_text(aes(label label), size 4) scale_fill_gradient(low white, high #C8102E) scale_x_continuous( limits c(0.5, 2.5), breaks c(1, 2), labels c(Ligand, Receptor) ) theme_classic() # 在配体和受体之间加直线 p geom_segment( data data.frame( x rep(0.7, n), xend rep(2.3, n), y seq_len(n), yend seq_len(n) ), aes(x x, xend xend, y y, yend yend), inherit.aes FALSE, color grey40, alpha 0.7 )这个思路的精髓在于把热图当成散点坐标系来处理x轴只有两个离散位置——1是配体2是受体y轴是配对在热图中的排列顺序同一行的配体和受体y值相同那么它们之间的连线就是一条水平的geom_segment。如果你想让连线更有动感把geom_segment换成geom_curve并把curvature设为0.2左右就能得到弧形连线。粗细、颜色、透明度都可以自由控制甚至能按p值做分组映射。我实际做出来的成图效果完全够发表用而且这种本地补线方式还有个额外优点连线可以精确对齐到格子的中轴不会因为平台内部缩放而产生偏移。带连线的配体-受体联合热图其实并不神秘核心就是把细胞通讯分析的结果从“大而全”的列表变成“小而精”的故事。在线工具负责统计计算和底图生成本地绘图负责连线微调和最终美化这套组合我用到现在基本覆盖了所有课题汇报和论文投稿的需求。如果你也在做细胞通讯相关课题不妨按这个流程试一次很快就能找到适合自己的参数模板。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

JuiceFS 怎么配置 POSIX ACL 实现细粒度访问控制 2026/9/15 11:03:38

JuiceFS 怎么配置 POSIX ACL 实现细粒度访问控制

JuiceFS 怎么配置 POSIX ACL 实现细粒度访问控制 【免费下载链接】juicefs JuiceFS is a distributed POSIX file system built on top of Redis and S3. 项目地址: https://gitcode.com/GitHub_Trending/ju/juicefs 如果 JuiceFS 卷里的文件需要区分"某个特定用户…

阅读更多 →
如何把 Bokeh server 应用嵌入 Flask 网站(server_session 与 pull_session)? 2026/9/15 11:03:38

如何把 Bokeh server 应用嵌入 Flask 网站(server_session 与 pull_session)?

如何把 Bokeh server 应用嵌入 Flask 网站(server_session 与 pull_session)? 【免费下载链接】bokeh Interactive Data Visualization in the browser, from Python 项目地址: https://gitcode.com/GitHub_Trending/bo/bokeh 如果你的…

阅读更多 →
深入解析 SkyPilot:在 Kubernetes、Slurm 与 20+ 云上统一运行、管理与扩展 AI 工作负载 2026/9/15 11:03:38

深入解析 SkyPilot:在 Kubernetes、Slurm 与 20+ 云上统一运行、管理与扩展 AI 工作负载

深入解析 SkyPilot:在 Kubernetes、Slurm 与 20 云上统一运行、管理与扩展 AI 工作负载 【免费下载链接】skypilot The AI Compute Platform for frontier teams. SkyPilot turns fragmented AI compute into one AI supercomputer, so frontier AI teams build cus…

阅读更多 →
plate 项目 Mark 插件功能车道:Highlight / Subscript / Superscript 的审计、文档对齐与实现现状 2026/9/15 11:03:38

plate 项目 Mark 插件功能车道:Highlight / Subscript / Superscript 的审计、文档对齐与实现现状

plate 项目 Mark 插件功能车道:Highlight / Subscript / Superscript 的审计、文档对齐与实现现状 【免费下载链接】plate Rich-text editor with AI and shadcn/ui 项目地址: https://gitcode.com/GitHub_Trending/pl/plate 本篇指南以仓库中的功能车道计划…

阅读更多 →
WTF Solidity 入门教程(西班牙语版)第 3 讲:Solidity 函数类型完全指南——pure、view、payable 与可见性 2026/9/15 11:03:38

WTF Solidity 入门教程(西班牙语版)第 3 讲:Solidity 函数类型完全指南——pure、view、payable 与可见性

WTF Solidity 入门教程(西班牙语版)第 3 讲:Solidity 函数类型完全指南——pure、view、payable 与可见性 【免费下载链接】WTF-Solidity WTF Solidity 极简入门教程,供小白们使用。Now supports English! 官网: https://wtf.acad…

阅读更多 →
fluid_flow 流体可视化:改一个 lambda 就把蓝点吹成漩涡与四重流场 2026/9/15 11:00:38

fluid_flow 流体可视化:改一个 lambda 就把蓝点吹成漩涡与四重流场

fluid_flow 流体可视化:改一个 lambda 就把蓝点吹成漩涡与四重流场 【免费下载链接】videos Code for the manim-generated scenes used in 3blue1brown videos 项目地址: https://gitcode.com/GitHub_Trending/vi/videos 你在终端敲下一条命令,屏…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞