AlphaFold 结构可视化:一条命令到 3D 彩色蛋白图的最短出图路径
2026/9/11 18:36:01 网站建设 项目流程

AlphaFold 结构可视化:一条命令到 3D 彩色蛋白图的最短出图路径

【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold

你刚拿到一条 300 个残基的蛋白序列,想尽快看到它的三维构象。AlphaFold 的开源推理管线做的事,是把一条 FASTA 序列送进模型,得到带原子坐标的 PDB,再 3D 渲染成能拖拽旋转的彩色模型。这条从序列到蛋白质结构可视化的链路,对没有生物信息背景的人也能跑通,尤其适合想给结构预测结果快速出图的开发者。前提是一台装了 NVIDIA GPU 的 Linux 机器,并且已把遗传数据库和模型参数下载到位(一次性准备)。环境就绪后,出图本身只需一条命令加几行 Python。以下命令都在已 clone 的仓库根目录执行。

从序列到 3D 图的最短路径

第一步,把序列写进一个 FASTA 文件(首行>名字,次行氨基酸序列),然后调用仓库自带的 Docker 入口。这一条命令会完成 MSA(多序列比对)检索、结构预测和 AMBER 弛豫(用物理力场微调原子位置),并按置信度把结构排序好:

python3 docker/run_docker.py \ --fasta_paths=my_protein.fasta \ --db_preset=reduced_dbs \ --data_dir=$DOWNLOAD_DIR \ --output_dir=/tmp/alphafold

跑完,/tmp/alphafold/<target>/下会出现ranked_0.pdb,它是置信度最高的预测结构。每个残基的 pLDDT(预测的局部可信度分数,越高越稳)已经写进了 PDB 的 B 因子字段——B 因子是 PDB 里原本存原子热振动的列,这里被 AlphaFold 借来装置信度,正是后面 3D 着色的数据来源。同目录的timings.json记录各阶段耗时,ranking_debug.json记录每条模型的 pLDDT,方便你核对ranked_0是否真的最稳。

第二步,把这串坐标变成交互图。py3Dmol是浏览器端 3Dmol.js 的 Python 封装,装好后下面这段就能把ranked_0.pdb渲染成按 pLDDT 彩虹着色的卡通模型,鼠标左键拖拽旋转、滚轮缩放:

import py3Dmol # ranked_0.pdb 是预测输出,pLDDT 已写进 B 因子字段 pdb_str = open("/tmp/alphafold/<target>/ranked_0.pdb").read() view = py3Dmol.view(width=800, height=600) view.addModel(pdb_str, "pdb") # 把 PDB 载入查看器 view.setStyle({"cartoon": {"colorscheme": {"prop": "b", "gradient": "roygb", "min": 0, "max": 100}}}) view.zoomTo() view.show()

到这一步,你就有一条从输入序列到 3D 图的完整通路。

影响出图效果的几个旋钮

setStyle里那串字典是主要调节区,改数字即可,不用动结构。常用的五个旋钮:

旋钮写在哪作用
prop: "b"colorscheme按 B 因子字段着色,AlphaFold 把 pLDDT 存在这里,等于"按可信度上色"
min/maxcolorscheme颜色映射的两端。收窄到70/100能把高分段的色差拉开
gradientcolorscheme渐变色带,roygb是连续彩虹;换离散映射则对齐官方四色档
stickcartoon并列叠加 sidechain 棒状显示,看活性位点的侧链朝向
addSurface(py3Dmol.VDW, …)addModel后调用叠加范德华表面,opacity: 0.4半透明,适合看结合口袋

官方 notebook 用的是四档离散配色(见notebooks/AlphaFold.ipynb):pLDDT 小于 50 橙、50 到 70 黄、70 到 90 浅蓝、高于 90 深蓝,读图时一眼能分清哪些区段可信。

进阶:把实验结构和预测结构放到一起看

跑通单条之后,最常见的下一步是对照:你手上有个已知实验结构(比如从 RCSB 下下来的 mmCIF),想看看预测和它差在哪,或比较野生型与突变体。alphafold/common/protein.py提供from_pdb_string()from_mmcif_string()两个入口,能把外部结构读进来,to_pdb()再写回字符串,就能塞进同一个py3Dmol查看器并排对比。示意就两行:ref = protein.from_mmcif_string(open("5nmu.cif").read(), chain_id="A"),然后view.addModel(protein.to_pdb(ref), "pdb")。两个模型叠在一起,残基偏差、柔性 loop 的位置差,拖两下就能看个大概。

第一次跑通的实操建议

第一次跑先用reduced_dbs(约 600 GB 数据库)把单条序列出图走通,确认 GPU 与数据库读写权限没问题,再切full_dbs追精度。完整可交互的预测加可视化流程见notebooks/AlphaFold.ipynb,模型细节见docs/technical_note_v2.3.0.md

【免费下载链接】alphafoldOpen source code for AlphaFold 2.项目地址: https://gitcode.com/GitHub_Trending/al/alphafold

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询