2. PyMOL 基本界面与操作:菜单、命令行、鼠标操作

好,我们直接进入正题。PyMOL这工具,第一眼看上去可能有点唬人——黑乎乎的窗口,一堆按钮,还有个闪烁的光标。但说白了,它的核心交互方式就三种:菜单点一点、命令行敲一敲、鼠标拖一拖。你把这三种玩熟了,就掌握大半了。

2.1 界面布局:你得先知道东西在哪儿

我第一次打开PyMOL的时候,说实话,有点懵。界面分成了好几块,跟一般的Windows软件不太一样。我来给你拆解一下。

默认界面主要分这几个区域:

  • 主显示窗口 (Viewer): 中间那块最大的黑色区域,你的蛋白质、DNA、小分子都显示在这里。这是你工作的主战场。
  • 内部GUI (Pull-down Menu): 窗口顶部那行菜单,File、Edit、Build、Display、Settings……功能挺全,但说实话,我很少用它。为什么?因为用命令行更快。
  • 控制台 (Internal Console): 这分成两部分。右边那个带滚动条的区域,叫输出控制台,打印各种日志和错误信息。左边那个闪烁光标的白色输入框,叫命令行,这才是PyMOL的灵魂。
  • 对象列表 (Object List): 在右侧,显示你加载的所有分子对象。你可以在这里点选、隐藏、删除对象。
  • 鼠标模式指示 (Mouse Mode): 在右下角,默认显示"3-Button Viewing"。这告诉你当前鼠标是干什么用的。

我的小经验: 我不喜欢把输出日志和命令行挤在一起。我习惯把命令行单独拖出来,让它更宽一些。你知道怎么拖吗?按住控制台和对象列表之间的那条分割线,左右拖动就行。

现在,我们用一张图理清这些组件的关系。这张图是我自己画的,帮你建立直观印象。

PyMOL 主界面结构图 主显示窗口 (Viewer) 3D 分子可视化主区域 顶部菜单栏 (Pull-down) 内部 GUI 按钮与快捷操作 (我不常用,命令行更高效) 命令行 (Cmd) PyMOL 的灵魂 输入命令,一切尽在掌握 对象列表 管理所有分子对象 隐藏、删除、重命名 鼠标模式指示 当前操作模式 (3-Button Viewing) 💡 核心:菜单 + 命令行 + 鼠标 = PyMOL 交互三要素

2.2 鼠标操作:旋转、平移、缩放,信手拈来

在PyMOL里,鼠标就是你的手。默认是"三键"模式,也就是你鼠标上的左键、中键(滚轮)、右键,各有分工。

鼠标操作 功能 我常用的场景
左键拖拽 旋转视图 从各个角度观察结合位点
中键拖拽 平移视图 把重点结构挪到画面中央
右键拖拽 缩放视图 拉近看细节,拉远看整体
Ctrl + 左键 框选原子 选择特定区域的残基
Shift + 左键 居中并缩放至原子 快速定位到选中的原子

实用技巧: 你是不是经常想把某个配体转到正中间仔细看?试试这个:先点一下配体的任意一个原子(对象列表里选中它),然后按 Ctrl + Shift + 左键 点击那个原子。一瞬间,它就跑到屏幕中心了。我在项目汇报时经常用这招,显得很专业。

关于鼠标模式的切换: 你注意到底部有个"3-Button Viewing"的按钮吗?点一下它,可以切换成"2-Button Viewing"或者"Editing"。我提醒过我的研究生,不小心切到Editing模式后,鼠标左键变成了点选和移动原子,而不是旋转。那时候你会发现自己怎么都转不动分子,别慌,点回去就行。

2.3 命令行:这才是我最看重的部分

很多人喜欢用菜单点点点。但我要说,命令行才是PyMOL的精髓。为什么?举个例子:你想给一个蛋白质画个半透明的表面,再给配体显示成球棍模型。用菜单:你得点进点出,找半天。用命令行:打一行命令就搞定。

命令行的输入框就在控制台左边空白处。你敲完命令,按回车执行。典型的命令格式是:

命令 对象名称, 参数1=值1, 参数2=值2

我一开始也觉得记命令很麻烦。但常用的就那么几个,你背下来之后,效率翻倍。

2.3.1 加载与显示

先学会加载结构文件。PyMOL支持PDB、SDF、MOL2等格式。

# 加载一个PDB文件
fetch 1ubq

# 从本地加载
load /path/to/your/protein.pdb

# 只加载模型的第一帧(如果是NMR结构)
load protein.pdb, 1ubq, state=1

曾经踩过的坑: 有一次我加载一个大的多聚体,直接用 load 命令,结果它把所有链都作为一个对象加载了。后来我才知道,想分开加载,得用 load 加上 discrete=1 参数,比如:load complex.pdb, obj, discrete=1。这样每条链才会变成独立的对象。

2.3.2 修改表示样式

这是最常用的一类命令。你可以控制怎么显示结构。

# 显示为卡通图(通常用于蛋白质主链)
show cartoon, 1ubq

# 显示为表面图
show surface, 1ubq

# 显示为棒状(配体和小分子常用)
show sticks, hetatm

# 隐藏所有水分子
hide everything, solvent

对应的颜色命令是 color,和 set 调整透明度。

# 给对象设置颜色
color blue, chain A
color red, chain B

# 设置透明度 (0-1之间,0为全透明)
set transparency, 0.5, 1ubq

2.3.3 选择:命令式选择的灵魂

你不会每次都想要操作整个分子。选择特定区域才是常态。PyMOL选择器语法叫 sele。

# 选择与配体5埃范围内的所有残基
select binding_site, byres (hetatm around 5)

# 选择一个特定残基
select mut_site, resi 52

# 选择某条链
select chain_a, chain A

选完以后,再对 binding_site 或者 mut_site 进行操作,比如 show sticks, binding_site。

2.4 菜单操作:面向新手的快捷方式

虽然我推崇命令行,但菜单不是没用。你刚上手,或者记不住命令时,菜单很有帮助。

常用菜单入口:

  • A (Action) 按钮: 在对象列表里,每个对象旁边都有个小三角,点开会有一个"Action"、 "Display"、 "Color"等菜单。这是 右键菜单 的精华。你可以在这里快速重命名、复制、删除对象。
  • Display 菜单: 调整整体显示模式,比如立体显示、背景颜色等。
  • Setting 菜单: 调整渲染质量、光照、抗锯齿等。想导出高清图,需要来这里把 Ray Trace 的采样数调高。

我自己的习惯: 我会用菜单来快速查看有哪些选项,比如想知道颜色有哪些名字,就去Color菜单里翻。真正写报告或者做批量处理时,我就切回命令行。两者配合着用,最舒服。

2.5 一些让你用起来更顺手的配置

你每次启动PyMOL都要重新选显示模式?不,我们可以写配置文件。

在启动目录或者用户目录下,有一个 .pymolrc 文件(Windows是 pymolrc.pymol)。你把常用的设置写进去,PyMOL启动时会自动加载。

# 我的 .pymolrc 片段
# 设置黑色背景(默认就是,但我就喜欢强调一下)
set bg_rgb, black

# 设置抗锯齿,让线条更平滑
set antialias, 2

# 启动时打开外部GUI(我喜欢用)
set internal_gui, 0

# 设置默认鼠标模式为3-Button Viewing
set mouse_mode, 0

好了,界面的这些事就说到这里。你现在应该能分清哪里是命令行,哪里是对象列表,也知道怎么用鼠标把分子转起来了。嗯,接下来我们就要开始来真的——加载一个蛋白质,动手画张漂亮的图。