使用 Python 可视化分子

作者:Joey Bernard

介绍 PyMOL,一个用于研究化学结构的 Python 包。

过去我研究过几个用于计算化学的开源软件包,但在本文中,我将介绍一个用 Python 编写的名为 PyMOL 的软件包。

PyMOL 是一个非常强大的程序,用于可视化和分析化学结构。虽然主要项目是开源的,但也有商业版本可用,为需要的人提供支持。

有几种安装选项,但我实际上建议您不要直接从可用的下载文件中安装它。您首先需要安装相当多的依赖项,这可能会导致您陷入依赖地狱。因此,如果您的特定发行版的软件包管理器包含 PyMOL 的软件包,那么使用它可能会容易得多,尤其是在您刚开始学习如何使用 PyMOL 时。

正如我所提到的,从名称上也很明显,PyMOL 是用 Python 编写的,它还使用 3D 库来处理实际的图像渲染。PyMOL 也是用插件架构编写的,这意味着您可以扩展 PyMOL 的功能集以处理新的分析工作流程。

当您第一次启动 PyMOL 时,将打开两个窗口(图 1)。第一个是控制台窗口,您可以在其中以编程方式与 PyMOL 交互。第二个窗口是用于可视化和分析您的化学问题的结果的实际查看器。

图 1. 当您第一次启动 PyMOL 时,您会得到一个控制台窗口和一个查看器窗口。

最基本的使用是作为化学结构的常规查看器。为此,请单击“文件→打开”菜单项以弹出对话框窗口,您可以在其中选择要打开的文件(图 2)。

图 2. 打开 PDB 文件会在查看器窗口中渲染分子。

PyMOL 可以处理几十种不同的文件格式。如果您还没有自己的输入文件,您可以从 RCSB 蛋白质数据库 获取 PDB 文件,以便探索 PyMOL 并了解您可以用它做什么。

打开时,您将获得分子的默认视图,即棍状图形。在查看器窗口中,有三个窗格。左侧窗格包含实际渲染的图像。在右侧,有两个较小的窗格。下半部分描述了您可以使用鼠标操作在查看器中操作分子的操作。您可以旋转图像、放大和缩小,以及控制在查看窗格中渲染的对象的剪切和选择。上半部分是对象控制面板。它包含当前会话中正在处理的所有对象的列表。

列表中的每个对象都有一系列按钮,可以将功能应用于该对象。列表顶部有一个特殊条目,它会影响所有对象。第一个按钮标记为“A”,是一组您可以应用于选定对象的操作。这些操作包括使用预设来设置查看选项,甚至启动计算(图 3)。

图 3. 许多预设可用于简化可视化。

您可以通过操作菜单更改显示屏的几个其他查看选项。“S”和“H”按钮提供要显示哪些元素和要隐藏哪些元素的菜单。“L”按钮允许您设置在查看器中标记的内容,“C”按钮允许您调整颜色在渲染中的使用方式。

您还可以选择通过在查看器中单击鼠标右键来直接在查看窗格中更改查看元素。执行此操作时,您会获得一个下拉菜单,您可以在其中更改缩放、方向和可见对象,以及许多其他选项。

由于有太多设置要更改,您可能会发现自己处于无法再看到相关对象的情况,或者您可能无法有效地撤消所做的更改。在这些情况下,您可以右键单击查看器并选择“重置”条目以从头开始。

对于更复杂的交互,可以从“向导”菜单项中使用许多向导来帮助您协调这些类型的交互。例如,您可以通过单击“密度”选项来处理密度图(图 4)。这会在右侧窗格中为您提供一组工具,您可以在其中更改围绕密度映射功能的设置。

图 4. 有向导可以帮助您完成更复杂的任务,例如处理密度图。

还有一个插件套件,可以为 PyMOL 添加额外功能。转到“插件→插件管理器”以打开一个新窗口,您可以在其中使用这些插件(图 5)。

图 5. 插件管理器允许您安装、删除和配置 PyMOL 插件。

单击“安装新插件”选项卡会提供一些关于如何安装新插件的选项。第一个选项允许您直接从存储在本地文件系统上的文件安装。第二个选项是从 PyMOL Wiki 安装插件,您可以输入指向 Wiki 页面之一上描述的插件的 URL。第三个选项是从可用的插件存储库之一中选择并安装插件。

当您从列表中选择一个存储库时,可用的插件列表将被填充,您可以简单地从该列表中选择您需要的插件。

虽然您可以编写自己的完整插件,但您也可以通过使用脚本更轻松地添加自己的自定义功能。PyMOL 包含自己的命令语言,您可以直接在控制台窗口中使用。这些包括简单的命令,例如加载文件或保存图像,以及更复杂的命令,例如在两个分子之间进行拟合。

除了这些内置命令之外,您还可以访问底层的完整 Python 解释器。这意味着您可以编写 Python 脚本,这些脚本可以与这些命令以及 PyMOL 会话中的对象一起工作,以执行更复杂的任务。

一旦您确定了任务,您可以将您的工作保存在一个脚本文件中,您可以稍后重新加载并在不同的会话中应用它。

PyMOL Wiki 还托管一个脚本库,在您开始创建自己的脚本之前,这是一个很好的查找地点,因为其他人可能遇到过相同的问题,并且可能找到了您可以使用的解决方案。即使没有,您也可能能够找到一个脚本,它可以作为您自己特定问题的起点。

当您完成 PyMOL 的工作后,有很多不同的方法来结束会话。如果您有可能会再次拾起并继续进行的工作,请单击“文件→保存会话”以保存您刚刚完成的所有工作,包括应用于视图的所有过渡。如果您所做的更改实际上是结构性的,而不仅仅是对分子外观的表面更改,则可以通过选择“文件→保存分子”来保存这些结构更改。这允许您将新分子写入化学文件格式,例如 PDB 文件。

如果您需要用于出版物或演示文稿的输出,可以使用几种不同的选项。单击“文件→另存为图像”允许您选择以 PNG 格式保存常规图像文件,或以 POVRay 或 VRML 3D 文件格式写出数据。如果您正在进行更精美的演示文稿,您甚至可以通过单击“文件→另存为电影”来导出分子的电影。这使您可以生成 MPEG 电影文件,该文件可以在基于网络的期刊或演示文稿的幻灯片中使用。

加载 Disqus 评论