能够实现蛋白质三维结构可视化的软件非常多。比专业级的PyMOL(https://pymol.org/2/)。这个软件已经被世界上著名的生物医药软件公司“薛定谔公司(Schrödinger)”收购。这种专业级的可视化软件不仅能够做出非常漂亮的图片,它还有强大的插件支持各种各样的蛋白质结构分析,这款软件需要购买,如果你发表的文章里提到某些内容是使用PyMOL制作的,而文章中所有作者和作者单位都没有PyMOL的购买记录的话,你可能会面临薛定谔公司的追责。
下面给大家介绍一个功能同样强大的免费蛋白质三维结构可视化软件,VMD(http://www.ks.uiuc.edu/Research/vmd)。VMD由伊利诺伊大学研发。下载 VMD 需要先注册获得一个账户,之后就可以根据你的操作系统和机器配置选择合适的版本下载了。当然,如前所述,注册和下载对于非商业用途的用户都是免费的。VMD 的安装也极其简单。不需要预装任何语言环境,完全图形化安装过程,绝对可以轻松搞定。
对于 Windows 用户,VMD 默认安装在 C :Program Files(x86)University of IllinoisVMD 文件夹下。打开 VMD。VMD打开后,会弹出三个窗口:VMD Main(主窗口),VMD Display(显示窗口),和命令窗口。
图4.14 VMD 主窗口、显示窗口和命令窗口
打开一个蛋白质结构(图4.15):主窗口中点 FileNew Molecule,弹出新窗口Molecule File Browser(文件读取窗口),文件读取窗口中点 Browse,自动打开 VMD安装目录,进入proteins文件夹选择VMD自带的演示结构bpti.pdb,文件读取窗口中点 Load,显示窗口出现蛋白质结构。
图4.15 打开一个蛋白质结构
默认的蛋白质结构显示方案(图4.16):把显示窗口拖大后可以看到,VMD 读取了 PDB文件中的原子坐标,把每一个原子以细线的形式展示在 3D 空间中。不同的原子应的细线颜色不同。碳原子是青色的,氮原子是蓝色的,氧原子是红色的,氢原子是白色的,还有少量黄色的硫原子。
图4.16 默认的蛋白质结构显示方案
1、VMD 中鼠标的使用:把鼠标移到显示窗口里,按住左键,随意拖动,蛋白质就会在 3D 空间内任意旋转;按住鼠标右键拖动,蛋白质会在当前平面内 360 度旋转;前后滚动鼠标中键,可以将蛋白质放大或缩小。此外,鼠标还有更多的使用方法:主窗口上的 Mouse 菜单里可以切换鼠标模式。默认的鼠标模式是 Rotate Mode(旋转模式,R)。R模式下,鼠标在显示窗口内为单箭头。操作即为上述三种。将鼠标模式改为 Translate Mode(移动模式,T)后,鼠标在显示窗口内变为十字箭头 。T模式下,按住鼠标左键拖动为移动结构;右键和中键都为放缩功能。此外,还有Scale Mode(缩放模式,S)。S模式下,鼠标在显示窗口内变为左右箭头,按住鼠标左键或右键后,左右移动,即可完成连续的缩放。这种连续的缩放,不同于滚动中键实现的缩放。在默认的情况下,所有旋转是围绕整个结构的中心点进行的。我们也可以自己指定旋转的中心。这需要把鼠标模式切换为 Center(中心模式,C)。C模式下,鼠标在显示窗口内为十字。将十字放在想要作为旋转中心的原子上点一下,再按住鼠标左键旋转,就会以新定义的中心进行旋转。
2、恢复结构初始位置:主窗口中点DisplayReset View。或者在显示窗口内单击鼠标左键以激活窗口后,点击“=”键。
3、改变蛋白质结构的外观:有关外观的设置在主窗口中的 Graphic 菜单下的 Representation 窗口里(图4.17)。一个 Representation(显示状态)由三个元素构成。第一个元素是用什么样式(Style)显示,当前使用的样式是以细线显示原子(Lines)。第二个元素是用什么颜色(Color)显示,当前使用的颜色是按原子名定义的不同颜色(Name)。最后一个元素是要显示什么内容(Selection),当前显示的内容是所有原子(all)。这三个元素分别在 Representation窗口里的 Draw style 标签下的 Drawing Method 下拉条、Coloring Method 下拉条和Selected Atoms 输入框里进行设置。
图4.17 Representation 窗口
4、Drawing Method 下拉条(图4.18):Lines 以细线显示原子。CPK 以不同大小的球来显示原子,原子间的连线是相应的化学键,比如碳与碳之间的共价键,硫与硫之间的二硫键等。NewCartoon 只显示蛋白质的碳骨架(backbone),并形象的展示出不同的二级结构。每一种 Drawing Method 都可以再进一步设置显示效果。比如对于 CPK,可以调整原子球的大小(Sphere Scale)、改变化学键的粗细(Bond Radius)、以及设置更高或更低的分辨率(Sphere/Bond Resolution)。
4.18 不同的几种Drawing Method
5、Coloring Method 下拉条(图4.19):Name 颜色方案是一种原子一种颜色,常见的比如碳原子青色、氧原子红色、氮原子蓝色、硫原子黄色。在 NewCartoon 显示样式下,只有碳骨架被现实出来,再配以 Name 颜色方案,整个结构都是青色的。Secondary Structure 颜色方案可以为不同的二级结构赋予不同的颜色,常见的比如α螺旋紫色、β折片黄色、转角青色、松散 coil 结构白色。颜色方案 Res Type 根据氨基酸类型的不同赋予不同的颜色,比如非极性氨基酸白色、极性带正电荷的氨基酸(碱性的氨基酸)蓝色、极性带负电荷的氨基酸(酸性的氨基酸)红色、极性不带电荷的氨基酸绿色。这种颜色方案适合在显示氨基酸侧链的 Drawing Method 下观看,比如 CPK 样式。颜色方案 ResName 为20 种氨基酸设置了 20 种不同的颜色。
4.19 不同 Drawing Method 和 Coloring Method 组合
6、Selected Atoms 输入框:输入框里输入需要显示的内容,比如,写“all”代表显示所有原子,也就是整个蛋白质、写“backbone”代表显示碳骨架。输入框里允许输入的关键词和语法在 Selections 标签下有详细定义。可以写 Singlewords 里面单个的单词,也可以写 Keyword和 Value 组成的词组,还可以利用逻辑词“and/or/not”把多个单词和词组串成句子。举例:
(1)点击 Reset 清空输入框里的内容→Keyword 里双击 ResName→Value 里双击 ALA(输入框里出现“ResName ALA”) →点击 Apply。显示名字为 Alanine 的氨基酸上的原子,即显示所有丙氨酸。配合 Drawing Method 设置为 CPK,Coloring Method 设置为 ResName。
(2)点击 Reset 清空输入框里的内容→Keyword 里双击 Resid→Value 里双击1→点击Apply。显示第一个氨基酸。利用这个 Keyword 和 Value 组合可以根据残基的编号选择某个或某一段氨基酸,比如,想要显示第1到第10个氨基酸,可以直接在输入框里输入“resid 1 to 10”,回车。此时显示的就是前10个氨基酸。
(3)Draw style 标签下,Drawing Method 设置为NewCartoon,Coloring Method 设置为 Secondary Structure→Selections 标签下,点击 Reset 清空输入框里的内容→Singlewords 里面双击 alpha_helix→点击“or” → Singlewords 里面双击 beta_sheet(输入框里出现“alpha_helix or beta_sheet”) →点击 Apply。通过逻辑词显示出所有的α helix 和β sheet。
VMD 可以设置多个representations(简称 rep),也就是将多个显示状态的试试效果叠加在一起(图4.20)。
7、representations(简称 rep):设置第一个 rep:当前处于编辑状态下的 rep 背景色为浅绿色。设置 Drawing Method为 NewCartoon,Coloring Method 为 Secondary Structure,Selected Atoms为“all”,回车(或点击右下角 Apply 按钮)。创建第二个 rep:点击 Create Rep。点击后,复制产生了和第一个一摸一样的第二个 rep。浅绿色背景自动跳转到第二个 rep,即目前第二个 rep 处于可编辑状态。设置Drawing Method 为 cpk,Coloring Method 为 colorid,并选择选“1 red”(红色),Selected Atoms 为“resname PRO”,回车(或点击右下角 Apply 按钮)。设置两个 representations 后,蛋白质中的所有脯氨酸就以红色的原子球的形式叠加显示在以二级结构着色的碳骨架上了。
图4.20 设置两个 representations
创建第三个rep:点击 Create Rep。设置 Drawing Method 为 Surface,Coloring Method 为 colorid,并选择选“8 white”(白色),Selected Atoms 为“all”,回车(或点击右下角 Apply 按钮)。此时,可以看到填满肉的蛋白质,也就是蛋白质的外表面。继续设置 Coloring Method 右侧的 Material(材质)为 Transparent(透明材质)。如果显卡支持,可以打开 GLSL 显示模式:主窗口中点 DisplayRendermode选中 GLSL。GLSL 打开后的 Transparent Surface 变得更加柔美了(图4.21)。
图4.21 设置三个 representations 及 GLSL 显示模式
如果要删除某一个rep,比如删除第二个rep,需要先选中它(选中后背景色变为浅绿色),再点击 Delete Rep,就删掉了。或者你可以双击某一个 rep,比如双击第三个rep,将其暂时隐藏,等需要的时候再双击它取消隐藏(图4.22)。
图4.22 删除和隐藏 representation
8、保存与打开:当把蛋白质结构的显示效果调整到比较满意的状态后,可以保存当前所有的representations(注意保存的是显示状态,而不是结构):主窗口中点击 File→Save Visualization State→保存在桌面上,起名叫 mystate.vmd。接下来关闭 VMD 再重新打开。这次我们不需要 Load 蛋白质结构,分别设置三个 rep,我们只需要直接载入刚刚保存的mystate.vmd , 即可恢复刚刚的显示状态:主窗口中点击File→ LoadVisualization State→找到并打开mystate.vmd。这时,之前保存的显示状态就自动显示出来了(图4.23)。
图4.23 保存和载入显示状态
9、调换背景颜色(图4.24):主窗口中点击 Graphics→Colors→弹出 Color Controls颜色控制窗口→Categories选Display→Names 选 Background→Colors选8 white。
图4.24 Color Controls 窗口调换颜色方案
Color Controls 窗口里可以调整各种VMD 默认的颜色方案。比如Coloring Method选Name的时候,默认的颜色方案是:氢原子白色,氧原子红色,碳原子青色等。这里,你可以根据需要把它们设置成其他颜色。
10、隐藏坐标轴:主窗口中点击 Display→Axes→off。
11、显示Lable:有时我们需要标记出某些氨基酸的序号或原子的名称(图4.25)。主窗口中点击 Mouse→Lable→Atom。把鼠标模式设置为Lable模式,让它标记原子。此时,鼠标变为十字。接下来在显示窗口中,要标记哪个原子就在哪里点一下。点击后出现文本显示的氨基酸名字、氨基酸序号以及被点击的原子的名字。
图4.25 显示Lable
12、调整 Lable:
1)改变字体颜色(图4.26):主窗口中点击 Graphics→Colors→弹出 Color Controls颜色控制窗口→Categories 选 Lable→Names 选 Atoms→Colors选16 black。
图4.26 Color Controls 窗口改变 Lable 字体颜色
2)改变字体大小/粗细(图4.27):主窗口中点击Graphics→Lables→弹出 Lable 窗口→Global Properties 标签下设置 Text Size 改变字体大小,Thickness 改变粗细。
3)改变显示位置和内容(图4.28):主窗口中点击 Graphics→Lables→弹出 Lable 窗口→Properties 标签下选中要调整的 Lable→按住鼠标左键在 Offset 坐标系内移动来改变 Lable 的位置写入 Format 来改变 Lable 的内容。默认 Format 为:%R(氨基酸名字)%d(氨基酸序号):%a(原子名字)。比如,只想显示氨基酸名字和编号,删掉“:%a”这部分代表原子信息的代码即可。
图4.27 Lable 窗口改变 Lable 字体大小/粗细
图4.28 Lable 窗口改变 Lable 位置和内容
13、保存结构图:
以刚刚bpti.pdb 这个蛋白质结构文件为例,设置了三个 representations,添加并调整了Lable,得到了最终的蛋白质3D 结构(图4.29)。最后要做的就是保存结构图片。屏幕截图是较为方便快捷的方法,但是所得图片分辨率不高。如果想要高质量的图片,可以用主窗口下的FileRender弹出 File Render Controls 窗口。File Render Controls 窗口里可以选择多种图片导出方式。
图4.29 bpti.pdb 的最终结构图片