Skip to content

Article image
用于探索性分析的交互式数据可视化

May 16, 2026 · Updated: May 25, 2026

概述

交互式可视化使研究人员能够动态探索生物数据,而不是被动地查看静态图。通过启用缩放、平移、刷动、过滤和链接视图,交互式工具使用户可以从多个角度实时查询数据。这种探索性方法对于问题没有提前完全定义的高维和大规模数据集特别有价值。现代 Web 技术 , D3.js、Plotly、Bokeh 和 Shiny , 无需专门的编程专业知识即可实现复杂的交互。

关键概念

链接和刷选 连接同一数据集的多个视图:在散点图中选择点会突出显示表中的相应行或热图中的区域。 动态过滤允许用户通过对数值变量进行阈值设置或选择分类组来对数据进行子集化,所有可视化效果都会立即更新。 细节层次渲染通过在低缩放下显示聚合表示和在高缩放下显示单个点来处理大数据。 客户端与服务器端渲染决定了可扩展性:基因组学浏览器等基于 Web 的工具通常对全基因组数据集使用服务器端平铺渲染。

应用程序

交互式可视化改变了研究人员处理高通量数据的方式。在DNA 微阵列和基因表达 分析中,交互式热图允许用户对基因和样本进行聚类,同时动态调整色标。 [下一代测序](/guides/next- Generation-sequencing.html) 项目受益于覆盖多个实验轨迹的交互式基因组浏览器。 蛋白质组学和质谱 数据探索使用交互式散点图和火山图,用户可以单击各个点来检索肽鉴定。

实用协议

要使用 Plotly 创建 PCA 结果的交互式散点图,请从作为 pandas DataFrame 的基因表达矩阵开始。使用 sklearn.decomposition.PCA 运行 PCA:在转置表达矩阵(样本 x 基因)上拟合模型,然后提取前三个主成分。使用 PC1、PC2、PC3 值以及样本元数据(例如条件、批次、组织类型)构建 DataFrame。在 Plotly Express 中,调用 px.scatter_3d(data_frame, x=‘PC1’, y=‘PC2’, z=‘PC3’, color=‘condition’, hide_name=‘sample_id’) 生成交互式 3D 散点图。结果是完全交互式的可视化:用户可以通过拖动来旋转绘图,将鼠标悬停在任意点上以查看样本名称和坐标,并通过单击图例来打开/关闭组。对于 Bokeh,等价的是:from bokeh.plotting importfigure, show; p = 图(); p.scatter(‘PC1’, ‘PC2’, source=data, color=‘condition’),使用 show(p)` 启动带有平移、缩放和悬停工具提示的交互式 HTML 页面。例如,包含 10,000 个细胞的单细胞 RNA-seq 数据集可以可视化为交互式 t-SNE 或 UMAP 图:研究人员根据推断的细胞类型对细胞进行着色,然后将鼠标悬停在单个细胞上以显示前 5 个表达的基因。使用框选工具在其周围绘制一个矩形来选择感兴趣的聚类,然后进一步对数据进行子集化并重新聚类以发现子群体。链接刷将散点图连接到标记基因的热图 - 选择一个簇会立即更新热图以显示该组的平均基因表达,从而揭示定义每个细胞群的转录特征。