开源版 PyMOL 如何绘制 新冠病毒 分子结构?

article/2025/8/3 16:28:10

参阅:用生物知识解读“新冠病毒”,

百度网盘下载
提取码:csub

pip show pymol
简介: PyMOL是一个Python增强的分子图形工具。它擅长蛋白质、小分子、密度、表面和轨迹的3D可视化。它还包括分子编辑、射线追踪和动画。

先从 www.python.org 下载 python-3.11.9-amd64.exe
在 Win 10 上安装在 D:\Python311
cd D:\Python311
python.exe -m pip install --upgrade pip

pip install \pyMol\numpy-1.22.4+mkl-cp311-cp311-win_amd64.whl
pip install \pyMol\Pmw-2.0.1-py3-none-any.whl
pip install \pyMol\pymol-2.6.0a0-cp311-cp311-win_amd64.whl
pip install \pyMol\pymol_launcher-2.5-cp311-cp311-win_amd64.whl

D:\Python311> pip install pyqt5
Successfully installed PyQt5-Qt5-5.15.2 PyQt5-sip-12.17.0 pyqt5-5.15.11

安装成功之后 PyMOL.exe 在 D:\Python311\,右键点击发送到桌面快捷即可。


我们使用开源版PyMOL(PyMOL Open Source)来绘制新冠病毒(SARS-CoV-2)的分子结构。

新冠病毒的结构数据可以从RCSB PDB数据库获取。例如,新冠病毒的主要蛋白酶(Mpro,也称为3CLpro)的结构已被解析,其PDB ID为6LU7(这是早期研究中的一个重要结构)。

步骤如下:

  1. 从PDB数据库获取新冠病毒蛋白结构(例如6LU7)。

  2. 在PyMOL中加载该结构。

  3. 调整显示样式(如卡通图、表面图等)并突出显示重要区域(如活性位点)。

  4. 可以添加小分子抑制剂(如该结构中包含的抑制剂N3)并显示其结合方式。

具体操作:

步骤1:打开PyMOL。

步骤2:在PyMOL命令行中输入以下命令加载结构:

fetch 6LU7

步骤3:调整显示样式:

# 显示为卡通图,并按链着色
show cartoon
util.cbc# 显示小分子配体(抑制剂)
select ligand, organic
show sticks, ligand
color yellow, ligand# 显示活性位点附近的残基(例如配体周围5A内的残基)
select active_site, byres ligand around 5
show sticks, active_site
color magenta, active_site# 添加背景(白色)
bg white# 可选:显示表面,但可能会比较慢
# show surface
# set surface_color, white, 6LU7
# set transparency, 0.5, surface

在这里插入图片描述

步骤4:调整视角并渲染图像:

# 将视角调整到配体附近
zoom ligand# 渲染高质量图像
ray 1200,1200
png sars_cov_2_6LU7.png

在这里插入图片描述

如果您想展示整个病毒颗粒(例如刺突蛋白),可以使用PDB ID 6VSB(刺突蛋白三聚体)或6VXX(整个病毒颗粒的低分辨率结构,但注意:整个病毒颗粒非常大,可能难以在PyMOL中流畅操作)。

例如,加载刺突蛋白:

fetch 6VSBshow cartoon
util.cbcbg whiteray 1200,1200
png sars_cov_2_spike.png

6VSB
注意:整个病毒颗粒的结构非常大(包含数百万个原子),通常我们只关注其关键蛋白的结构。
XG_6VSB


在开源版 PyMOL 中绘制新冠病毒 (SARS-CoV-2) 分子结构可以通过以下步骤完成,我将提供详细指导和示例代码:


1. 获取新冠病毒结构数据

新冠病毒的关键蛋白结构可从 PDB 数据库获取:

  • 刺突蛋白 (Spike Protein):PDB ID 6VSB (三聚体结构)
  • 主要蛋白酶 (Mpro):PDB ID 6LU7 (药物靶点)
  • 核衣壳蛋白 (N Protein):PDB ID 7ACT
# 加载刺突蛋白结构
fetch 6vsb, async=0

2. 基础可视化 - 刺突蛋白三聚体

# 重命名对象
create spike, 6vsb# 显示设置
hide everything
show cartoon, spike
util.cbc  # 按链着色# 调整样式
set cartoon_flat_sheets, 0
set cartoon_smooth_loops, 1
set cartoon_transparency, 0.5# 添加受体结合域标签
label chain A and resi 319-541, "RBD"
color red, chain A and resi 319-541# 视角调整
zoom chain A and resi 319-541
orient

3. 展示刺突蛋白与 ACE2 受体结合

# 加载复合物结构 (PDB: 6M0J)
fetch 6m0j, async=0# 分离对象
create ace2, chain E
create spike_complex, chain A+B+C# 显示设置
show surface, ace2
color blue, ace2
set surface_transparency, 0.7show cartoon, spike_complex
color green, spike_complex# 高亮结合界面
select interface, (spike_complex within 5 of ace2) or (ace2 within 5 of spike_complex)
show sticks, interface
color magenta, interface# 测量关键距离
distance his34, ace2/34/NE2, spike_complex/417/OD1
distance gln42, ace2/42/OE1, spike_complex/455/N

4. 可视化主要蛋白酶 (Mpro) 与抑制剂

# 加载蛋白酶-抑制剂复合物 (PDB: 6LU7)
fetch 6lu7, async=0# 分离抑制剂
create protease, chain A
create inhibitor, organic# 显示设置
show cartoon, protease
util.cbag protease  # 按元素着色show sticks, inhibitor
color yellow, inhibitor# 显示催化位点
select catalytic_site, resi 41+145+163+164
show sticks, catalytic_site
color red, catalytic_site# 显示氢键相互作用
distance //protease/145/ND1, //inhibitor/1/N1
distance //protease/41/O, //inhibitor/1/N2
set dash_gap, 0.2
set dash_color, blue# 添加标签
label //inhibitor, "Inhibitor N3"
set label_size, 15

5. 创建病毒颗粒示意图

对于完整病毒颗粒,使用低分辨率结构 (EMDB-30210):

# 下载EMD-30210地图文件
fetch emd_30210, type=map# 创建等值面
isosurface viron, emd_30210, 0.5# 美化显示
color palecyan, viron
set surface_quality, 1
set surface_solvent, 0
set surface_smooth, 2# 添加刺突蛋白示意
pseudoatom spike1, pos=[100,100,100]
pseudoatom spike2, pos=[-100,100,100]
pseudoatom spike3, pos=[100,-100,100]
group spikes, spike1 spike2 spike3show spheres, spikes
set sphere_scale, 20, spikes
color red, spikes

6. 高质量渲染输出

# 设置渲染参数
set ray_trace_mode, 1
set ray_shadows, 0
set antialias, 2
set specular, 0.3
set ambient, 0.5
set direct, 0.8# 设置背景
bg white# 渲染图像
ray 2400,1800
png covid_visualization.png

7. 完整示例脚本 (新冠病毒刺突蛋白)

# 初始化
reinitialize
set orthoscopic, 1# 加载刺突蛋白
fetch 6vsb, async=0
create spike, 6vsb# 基本显示
hide everything
show cartoon, spike
util.cbc# 美化设置
set cartoon_flat_sheets, 0
set cartoon_transparency, 0.4
set cartoon_smooth_loops, 1
set cartoon_ring_mode, 3# 高亮RBD
select rbd, chain A and resi 319-541
show surface, rbd
color red, rbd
set surface_transparency, 0.6# 添加糖基化位点
select glycosites, resn NAG
show spheres, glycosites
color yellow, glycosites
set sphere_scale, 0.8# 视角调整
zoom rbd
orient# 最终渲染
set ray_trace_mode, 1
bg white
ray 2400,1800
png sars_cov_2_spike.png

解决常见问题

  1. 结构加载失败

    # 尝试不同PDB ID
    fetch 7a98  # 替代刺突蛋白结构
    
  2. 大文件处理

    set defer_builds_mode, 3  # 延迟构建
    set cache_frames, 0       # 禁用帧缓存
    
  3. 电子密度图显示

    fetch 7kr2, type=2fofc  # 加载电子密度
    isosurface density, 7kr2, 1.0
    color blue, density
    set surface_transparency, 0.7
    

资源推荐

  1. 新冠病毒结构数据库

    • RCSB COVID-19资源中心:https://www.rcsb.org/news?year=2020&article=5e74d55d2d410731e9944f52
    • EMDB病毒颗粒:https://www.ebi.ac.uk/emdb/emnav/#/search/virus/sars-cov-2
  2. PyMOL插件增强功能

    • APBS:静电势计算
    • Pymol-script-repo:扩展脚本库

通过以上方法,您可以在开源版 PyMOL 中创建专业级的新冠病毒分子可视化,适用于科研展示、教学或科普用途。


http://www.hkcw.cn/article/ouNUncgqbH.shtml

相关文章

PyTorch——DataLoader的使用

batch_size, drop_last 的用法 shuffle shuffleTrue 各批次训练的图像不一样 shuffleFalse 在第156step顺序一致

【前端】CSS面试八股

网上现有资料已经很丰富了,我挑了些自己押面试题时总结过的来写。 Q:回流和重绘 A: 回流reflow:计算元素的几何,引发layout重绘repaint:更新元素可见样式,引发paint 回流的成本比重绘高得多&…

【笔记】在 MSYS2(MINGW64)中安装 python-maturin 的记录

#工作记录 📌 安装背景 操作系统:MSYS2 MINGW64当前时间:2025年6月1日Python 版本:3.12(通过 pacman 安装)目标工具:maturin —— 用于构建和发布 Rust 编写的 Python 包 🛠️ 安装…

华为IP(7)

端口隔离技术 产生的背景 1.以太交换网络中为了实现报文之间的二层隔离,用户通常将不同的端口加入不同的VLAN,实现二层广播域的隔离。 2.大型网络中,业务需求种类繁多,只通过VLAN实现二层隔离,会浪费有限的VLAN资源…

JS基础内容1

JS基础内容1目录 打印方式关联方式延迟加载变量声明数组对象补充:json格式 函数函数的分类函数在对象和数组中的使用函数的交互调用 打印方式 1、弹窗打印 alert(arr) 2、控制台打印 console.log() 以 html 的形式打印 console.dir() 将 document 当成 对象 打印 …

高考报名人数8年来首降背后 教育需求变化探因

教育部近日公布,今年高考报名人数为1335万人,比去年的1342万略微下降7万人,这是自2018年以来首次出现下降。2025年高考考生主要对应的是2006年和2007年的新生儿。2007年出生人口数量为1594万,比2006年增长了10万,但为何考生数量会下降呢?这不能简单以数字对比来解释。例如…

数据库安全性

一、计算机安全性概论 (一)核心概念 数据库安全性:保护数据库免受非法使用导致的数据泄露、更改或破坏,是衡量数据库系统的关键指标之一,与计算机系统安全性相互关联。计算机系统安全性:通过各类安全保护…

【C++】string类

1. 标准库中的string类 1.1 string类 string类的文档介绍 在 使用 string 类时,必须包含 #include 头文件以及 using namespace std ; 1.2 auto和范围for auto 关键字 在早期C/C 中 auto 的含义是:使用 auto 修饰的变量,是具有自动存储器…

Docker 在云环境中的部署:AWS/ECS 与 Azure/AKS 的实践对比

Docker 容器的出现极大地提升了应用程序的打包、交付和运行效率。然而,在面对高并发、高可用和大规模集群管理的生产环境时,将 Docker 容器部署到公有云平台成为了必然选择。公有云平台提供了强大的基础设施和托管服务,极大地简化了底层运维负担。 在众多云服务提供商中,A…

【HarmonyOS 5】Laya游戏如何鸿蒙构建发布详解

【HarmonyOS 5】Laya游戏如何鸿蒙构建发布详解 一、前言 LayaAir引擎是国内最强大的全平台引擎之一,当年H5小游戏火的时候,腾讯入股了腊鸭。我还在游戏公司的时候,17年曾经开发使用腊鸭的H5小游戏,很怀念当年和腊鸭同事一起解决…

理解解释器架构:原理、组成与运行机制全解析

目录 前言1. 什么是解释器架构2. 解释器的基本组成2.1 被解释执行的程序2.2 解释器引擎2.3 解释器内部状态2.4 程序执行的当前状态2.5 存储器模型 3. 解释器的工作原理3.1 解析源代码3.2 初始化运行环境3.3 逐条执行语法结构3.4 维护程序状态3.5 内存管理与变量作用域 4. 举例&…

SOD-123和SOD-123FL封装到底有什么区别?

目录 1. 封装结构与尺寸 2. 热性能 3. 电气特性 4. 应用场景 5. 兼容性与替代性 6.价格比较 大家好,我们硬件工程师经常用到SOD-123和SOD-123FL的封装,特别是二极管,比如二极管1N4007便有这两种封装。那么这两种封装两者到底有什么区别…

Apache IoTDB V2.0.3 发布|新增元数据导入导出脚本适配表模型功能

Release Announcement Version 2.0.3 Apache IoTDB V2.0.3 已经发布! V2.0.3 作为树表双模型正式版本,主要新增元数据导入导出脚本适配表模型、Spark 生态集成(表模型)、AINode 返回结果新增时间戳,表模型新增部分聚…

NX753NX756美光科技闪存NX784NX785

技术解读与产品特性 美光科技的NX系列闪存,包括NX753、NX756、NX784、NX785等型号,代表了当前存储技术的前沿水平。这些产品基于先进的NAND闪存技术,采用业界领先的3D TLC NAND技术,实现了高速的数据读写能力。3D TLC NAND技术通…

go语言的GMP(基础)

1.概念梳理 1.1线程 通常语义中的线程,指的是内核级线程,核心点如下: (1)是操作系统最小调度单元; (2)创建、销毁、调度交由内核完成,cpu 需完成用户态与内核态间的切…

Docker容器创建Redis主从集群

利用虚拟机中的三个Docker容器创建主从集群,容器信息: 容器名角色IP映射端口r1master192.168.150.1017001r2slave192.168.150.1017002r3slave192.168.150.1017003 启动多个redis实例 新建一个docker-compose文件来构建主从集群: 文件内容&…

RTMP播放器谁更强?深入解析SmartPlayer与VLC、PotPlayer等方案的技术差异

在视频直播、安防监控、边缘计算、AI视觉识别等场景中,低延迟、高稳定的RTMP播放器SDK 是关键技术模块。虽然市面上存在VLC、PotPlayer等“看起来能播”的播放器,但真正能适用于生产环境,支持工程集成、多平台、复杂网络、实时反馈的专业RTMP…

DelphiXe12创建DataSnap REST Application

服务端:该类型应用可直接部署EXE导云端,指定单页直接写好函数,即可导出。同时自动提供网页版的API文档,并可在线测试写好的接口。也可以向其他语言提供接口。 客户端:可生成调用服务端生成的API接口,无效编…

跨平台猫咪桌宠 BongoCat v0.4.0 绿色版

—————【下 载 地 址】——————— 【​本章下载一】:https://pan.xunlei.com/s/VORWH1a7lPhdwvon6DJgKvrNA1?pwdcw2h# 【​本章下载二】:https://pan.quark.cn/s/c3ac86f4e296 【百款黑科技】:https://ucnygalh6wle.feishu.cn/wiki/…

2023ICPC杭州题解

文章目录 M. V图(签到)J. 神秘树(交互)G. 控制贪吃蛇(最短路)D. 运算符优先级(构造)H. 甜蜜的修噶 II(概率)B. 节日装饰(bitset根号分治)F. Top Cluster(LCA动态维护树的直径) 题目链接 M. V图(签到) int cmp(int x1,int y1,int x2,int y2){int xx1*y2,yx2*y1;if(x>y)return…