pymol使用教程

上传人:文*** 文档编号:48324290 上传时间:2022-01-03 格式:DOCX 页数:44 大小:1.52MB
返回 下载 相关 举报
pymol使用教程_第1页
第1页 / 共44页
pymol使用教程_第2页
第2页 / 共44页
pymol使用教程_第3页
第3页 / 共44页
点击查看更多>>
资源描述
简介&安装Pymol是一个开放源码,由使用者赞助的分子三维结构显示软件,由 WarrenLyford DeLano 编写,并且由DeLano Scientific LLC 负责商业发行。Pymol被用来创作高品质的分子(特别是生物大分子如蛋白质)三维结构。据 软件作者宣称,在所有正式发表的科学论文中的蛋白质结构图像中,有四分之一是使用Pymol来制作的。Pymol名字的来源:“Py”表示该软件基于python这个计算机语言,“Mol ” 则是英文分子(molucule )的缩写,表示该软件用来显示分子结构。由于实验需要,本人正在学习该软件,在这里把学习过程记录下来,希望对有需 要的朋友有所帮助。今天先来说说安装吧。自2006年8月1日起,DeLano Scientific 对事先编译好的 PyMOL执行程序 (包括beta版)采取限定下载的措施。目前,只有付费用户可以取得。不过源代码目前还是可以免费下载,供使用者编译。如果你和我一样,不想为此花钱的 话:1 .如果你是Windows用户,首先下载Pymol的源代码。然后安装CygWin ,并且确保正确安装以下模块:? C+ (gcc or g+ package name)? Python? OpenGL? PNG然后在源代码目录里面依次运行:2 .如果你是Linux用户,首先确保以下东东已安装:? Python? Pmw? OpenGL driver (我用的是 NVdia )? libpng? Subversion client(下载源代码需要)然后下载Pymol的源代码$ mkdir pymol-srcco$svnpymol-src然后进入源代码目录# cd pymol-src开始依次编译# python setup.py install# python setup2.py install拷贝执行脚本到某个$PATH ,安装就搞定了# cp ./pymol /usr/bin-可编辑修改-。如果运行时得到错误信息 "ImportError: No module named Pmw" ,那么你应该运行# python setup2.py install pmw如果你在使用 Gentoo ,请确保编译python 时添加了 tcl/tk 支持,否则运行是会提示错误"ImportError: No module named _tkinter"# USE="tcl tk" emerge python好了,下面我们就可以进入 Pymol 的世界了。基本的鼠标操作里主要介绍一下 Pymol 的基本操作,包括窗口菜单、加载文件、图像的基本鼠标操作等等。-可编辑修改-HnlpNOTICE LLana Sdeni hc LLL 揖 ict电wpens初启 for sipport-ng 白nd maintaining thia unofficial PMOL EKecubsbte Build.M JfOT 肾FF UPON THIS H4HI P UNt ES5 ¥QU KOW ANO CAN ffEtr VCW FE PARTY THAT COMPILED IT FORTn ctvtainPyMnL hulkl wilh ffnhntnjinriP anti up(>nrrrplaau wl«lt tlw project home page at: trip .1 ,>)'»- oerauwrr wriciTM OFtlir-KHUCt*中,一£,CQOt 4i 1 Cv|11Vl工护2<«P 工止* <f>ri 亡寸9 15 Jh» Itnq ur 产工1 1 ": et JirqR 步Pg* Th*enpyr iqK not ic4umuL-nma r¥HP4 It,G HTQ33 ”* 3 ?IL441Q cl4Uajr,加 tC 才M3 2&3B XLced £<=kuLi£iE: LU2Uts.£i J armijii 7 A 4-«w 4» l-r<i* k.»9-l: i r d r3 tign-9 3hfv4dbf*mi*Pitnnditv di itf tnd dlat rtftar*zii-Eii &C.F4 aE x hx « =/£/上 Jrd XL> b .! fc - In g =un*iiILKt.&& ± » r Tiy piTfiit 茸ndf»» ). lMT®r«/ ,/" prv 4ari thfl1" hrgj rxiiL ni?-L xc.« cf_fMEO.= a- xh. uiJLl ufrx-ca qrl tax hqg-Lfe Uw uwrpj j fwi i1 i i?« fxI "- 41 j fiarm !"1* rwfr i r* a ppa * r m iipp-*T+ i« rg -Snr «hh t rwi flj-d. tt*t. t-tUB n«jo«M .1 IT.e:二er L. DwLEia' gx dAaa£L-c. a l/ euL EUH«ri sn Brtv«r ! 1营 nr pihllfit'yr p»rtaining ” 曰内中/$曜jr jm ?r th4 d-jfiv£ieefdL- >iltLaopernsH&UXK UCFQ DLLM4C AJID 9cHHC KI XJJT;TIC kZ ZSCSJMM A£ HVLIAA.4TEI3 岬TF BiGAfri E FHTE BTHTWUil®. TITT-Jmift: MT 71Lrin HUtthHRTTHf flF HELR.C£A£rXABl-LT E AML FlIRfrS2 .5 .5 上丫工31tt jb CDVH1 一工FVKL LEAHU& EiiuiMe IcrEHTriC i :i- Hi 13A«4 r4i J.*v 3工仃瓦口 . ihttri -f tn 1a(4JWM 菊 3工.UfTMVW PJ"WLT1f-PC* MWor vfk. e*ts rKrirg. avrr压a 工 aw actish or ccwwt A LCfcjy4 Tosmccs ACIUtl Ui&IMS ¥注 St UH 1W CuBHI7UJ4 VIXIe 工U£ Li FI fl* rrarwiJLBet W tiit< tcnwwrTmNiD4UU NTl=*B w> i« k I I arMwhi E v£*ibj,虱W*EiLt nifC工彳 h-”:ifiL -h i墨Aiut* I*tN:1 gnc*L那 已erf* 七sAt. Jw fsMinlJ& al*” ," a!3 F/WL vlXiL « d; ill iilAJLvd fekjf,/imS- ilic rLT :ti eJJ p«j> 3City aT»-ar1 is-fnj. dc-irkirntati«n.Open-SourcePyMOLrM1.1.xTifrugh wcurrrirg£4J3fflfTFlfrf apOffAOrshlprXi#”。SclamrJWr LLC口事4包,事。步困,1 与 that #re昌ccesf 伯Ze to scientffK久immunities.多 DLario Sclenllflc LLCPO£I DfTiCft Bfi.r Hl UHPaio aif.Ca快m* tme1 GW 田 han. 1 SM 3必WW» d u IdiiuMi "it“i E CE。二 JJ1 F . I L. Mf Trulltcb七 L r c 七 F Ksccll.» r-t 0- - 1 -L日J工产R ;写卡np/ e1 Ha0 k匕 £h I V 0-A -rl 卜OBk r曰 M - porV- ! u i l i n A 卜nL EL-K n M CPC HP-LJelG7z LG 口“1MHM当你打开Pymol后,你将会看到如下图所示的界面:1 he PyMOL Molecular Graphics by stem!Flrt FiJil Ridiiil 地屉 Qi绅加 y他期 SjieiiH MmtMe 西QdP1itt|inioft-u-Bre b/ purohatsiirg -s PHOL Ha l n-ierbarce- arwlcr Support z-ubiDr iptior*Mir* jifor力匚I nt»fo«,nd! at. httpi14org".Ent#r 'hlp11 Fw a list * 。加后皿嫉台时Entr 1 h»lp <dnnmjrcW'ia?io jB F<a产 in+:广nntim or« 二 specn-f±qit力nnd.bit ESC anyt-inff- bp t-h干le tet*e?n test iscd 丁ndiiu十Cdsftirig tq CeFarciiiwa ,PyMOI Vlnwr该界面分为2窗口,上面的外部 GUI窗口(External GUI)和下面的 ViewerWindow 。 Viewer Window 又分为左右两块,左边用来显示结构图像的(Viewer),右边则是一个内部 GUI窗口(Internal GUI)。Viewer自身包含 一个命令行(如图中左下方的 PyMOL提示符),可以用来输入 Pymol命令; 在Inernal GUI中则可以选定一些特定的对象并完成一些操作。External GUI则包含一个标准菜单、一个输出区、一个命令行输入区以及右边的一些常用命令 按钮。请注意,标准的“复制、剪切和粘贴”操作只能在External GUI中完成,并且必须使用“Ctrl +C、Ctrl +X以及Ctrl +V”来完成,这也是这个所谓的外部GUI的最重要的优点。加载文件,有二种方法:1 .在 External GUI 中选择 File Open2 .使用命令行:load <filename>例如我们现在从www.pdb.org上下载了一个离子通道蛋白的pdb文件(PENTAMERIC LIGAND GATED ION CHANNEL FROM ERWINIACHRYSANTHEMI ),名字为 2vl0.pdb ,然后用 pymol 打开它:load 2vl0该蛋白质的结构就被显示出来啦,如下图:PyMOL "liwer2</LCjde *-B i.t tons L 川 R klht-t-Ji 尺口t3忖口”e咒口v? 51白b 11-Box -Box ClZ.P HcaiS Pkfil Pkt MvSZ SeLe Orig Clip MotZ C-cnt. MenuHcnij. - PkAthE Rcsi ulucs1/ 2 J O/esG-可编辑修改-基本的图像操作:是不是觉得上面的那个三维结构图看起来乱七八糟的阿, 那是因为蛋白质分子都是由成千上万个原子组成的, 而 Pymol 打开 pdb 文件时是默认把所有的原子都显示在那个小小的 Viewer 窗口里面的,当然看起来就很乱了。这时候就需要我们对这个图像进行一些操作,来得到漂亮的清晰的蛋白质三维结构图。先说说鼠标吧。? 任意旋转图像: 对准图像的任意处点住鼠标左键然后移动鼠标。? 放大/ 缩小图像:对准图像的任意处点住鼠标右键然后移动鼠标: 向上是缩小,向下则是放大。? 移动图像: 对准图像的任意处点住鼠标中键或者滚轮,然后移动鼠标。? 设定图像旋转中心: Ctrl Shift 鼠标中键或滚轮。? 移动剪切平面: Shift 鼠标右键。鼠标上下移动:调整前剪切平面(离你近的);鼠标左右移动:调整后剪切平面(离你远的)。-可编辑修改-配合下面的示意图最后一项“移动剪切平面”有点不容易理解,需要多试几次 你会发现Pymol的这项设定其实很方便。Move front clippingplane inwardMove Lidtk clippingplcine outwardExpand wedgeMove vedgp inwardRight ClickMove back clippingplane Inwardwedge outwardShrinkwedgeMove front clippingplane outward-可编辑修改-今天没时间了,明天还要出远门,就学到这里吧,用下面这个图作为结束,其实就是用cartoon面形式显示了上面的那个蛋白质,不过还比较难看aPyMOL Viewer1 By wei luPyMOL用法(教程二)基础Pymol命令这里主要介绍一下Pymol的一些基本命令操作。就像 Linux 一样,要想更好的 操作Pymol ,掌握一些常用的命令是必不可少的。 Pymol是区分大小写的,不 过目前为止Pymol还是只用小写,所以记住,所有的命令都是使用小写字母的。当你开始用Pymol来完成一个项目时,你也许想会让Pymol自动保存你所有输 入过的命令,以方便日后你再次读取并修改。这个可以通过创建一个10g文件来。达到,该文件的后缀名应为 .pml ,记住, Pymol 像 Linux 一样支持 Tab 键命令补全:Pymol> log_open log-file-name.pml如果你想终止记录,只需要键入:Pymol> log_close好了,现在载入 pdb 文件(继续前用的 pdb 文件):Pymol> load 2vlo.pdb现在 Pymol 就创建了一个叫 2vlo 的对象,你可以在内部GUI 窗口里面看见这个项目的名字。但是你也可以自己定义该项目的名字(如 test ):Pymol> load 2vlo.pdb, test下面说说如何来操作你新建的对象。首先:Pymol> show representationPymol> hide representation其中 representation 可以为: cartoon, ribbon, dots, spheres, surface 和 mesh 。使用这 2 个命令可以让Pymol 以不同的方式显示蛋白质结构。例如当我们键入:Pymol> hide linesPymol> show ribbon我们将得到如下结果:也许你已经注意到结构中有2个一模一样的蛋白质分子,只是方向不同而已,那么如何让Pymol只显示当中的一个分子呢?首先输入如下命令:Pymol> label all, chains这个命令的作用是让Pymol给蛋白质结构中的“链”编号,你会发现,第一个分子由“链” AE组成,第二个则由F J组成。好了,如果我们想把一个蛋白质分子去掉, 那么只要把“链” A E或者F J去掉即可:Pymol> hide ribbon, chain f+g+h+i+j上面的东东还可以这样完成:Pymol> select test, chain f+g+h+i+jPymol> hide ribbon, test-可编辑修改-上面的第一句命令的作用是选择 “链” F J,并命名为test ,然后在第二句命令中隐藏它。这样做的好处是,一旦你选择并命名了某个目标,你可以在后面随时对它进行各种操作。并且你在右边的控制面板里面也可以看到你选定的目标,并可以对其进行操作。比如你可以:Pymol> hide everything, testPymol> show cartoon, test这样你会得到:Hn r-kiSZ产 nk 1Mlnmi-Pk白亡 ue PyMuL Viewer说到这里就提到了 Pymol的一个比较重要的东东,就是选择并命名目标,它的基本语法就是:Pymol> select selection-name, selection-expression其中名字可以由字母A/a Z/z,数字0 9已经下划线口组成,但是要避免使用:! # $ % A & * ( ) ' " | ' < > ? /如果你要删除你选定的目标或者整个对象,你可以:Pymol> deleteselection-namePymol> deleteobject-name下面讲讲如何给对象以及目标改变颜色。预定义的颜色名字可以在外部GUI 窗口的 Settings Colors 中找到:Pymol> color color-namePymol> color color-name, selection-expression比如我们可以:Pymol> color red, ss hPymol> color yellow, ss sPymol> color green, ss l+""其中“ss” 代表 secondary structure , “h ” 代表 Helix , “s” 代表 Beta sheet ,l+"" 代表 Loop 和所以其他结构。这3 句的作用分别是把所有的 Helix 变成红色; 把所有的 Beta sheet 变成黄色;把所有的Loop以及其他部分变成绿色,于是我们得到:JPyWOL Viewer可周同仁口阿2VL01 <tC5t;bir hstp Md -p a-R it ton i lButtons LWP e-«sHove MovZF用口其-Ddm ClipCtr 7 PkAe Pkl一七Mh Selo Orig Clip5- :;lClk,- Cent Henu-二卜二Pymol可以同时打开多个pdb文件:Pymol> load object-name-l.pdbPymol> load object-name-2.pdb如果你想暂时关闭/打开某个对象,可以这样:Pymol> disable object-name-1Pymol> enable object-name-1你也可以用disable命令去除最后一个选择的目标上出现的粉红色的小点,但是该命令并不会使你选定的目标不可见。Pymol> disable selection-name使用鼠标通常是改变图像视角的最方便的办法,不过命令如zoom , orient等等有时候使用起来也是很有用的,它们提供了另一种改变图像视角的办法。放大选定目标:Pymol> zoom selection-name定向选定目标,可以使选定目标最大的尺寸水平显示,次大的尺寸竖直显示:Pymol> orient selection-name你也可以用 view 命令保存你目前的视角,注意,该命令只保存视角,并不保存你的对象显示方式:Pymol> view key, action其中 “ key ” 是你随便给当前视角定的名字,“action ” 可以为: store 或者recall 。如果不加任何“ action ” ,则默认为 recall :Pymol> view v1, storePymol> view v1, recallPymol> view v1说了这么多,最后说说如何保存文件吧。 Pymol 有 3 个层面的保存方式,下面来分别说说。1. 使用 log_open 命令把你所有使用过的命令记录为一个文本文档:Pymol> log_open script-file-name这样以后当你再次调用该文档时, Pymol 将执行上面的所有命令:Pymol> script-file-name不过注意,如果你想记录当前视角,则必须使用 get_view 命令。你可以选择外部GUI 窗口中的 File Append/Resume/Close Log 来分别暂停记录/ 恢复记录 / 停止记录该文档。-可编辑修改-你可以随时编辑该文档。在 linux 下,该文档的默认保存目录为当前用户的 home 目录。2. 如果你想下次打开Pymol 时直接回到当前所在的状态,那么你可以选择外部 GUI 窗口里面的 File Save Session ,创建一个会话文件 (.pse )。该会话文件和上面提到的文档文件的区别在于,首先文档文件可以编辑,但会话文件不可以; 记录文档文件前必须先运行log_open 命令, 而会话文件可以随时创建;最后文档文件以文档形式运行( ),而打开会话文件则必须选择外部 GUI 窗口中的 File Open 。什么时候需要创建会话文件呢?比如当你在某时有多个选择时, 你可以保存当前状态, 然后一一尝试这些选择, 不满意时只需要重新打开该会话文件即可。也就是说创建会话文件起到了 “ undo ” 的作用,这正是Pymol所缺少的。 希望开发者能赶快加入该功能, 那么这个会话文件好像就没什么大用了,呵呵。3. 如果你觉得当前显示窗口里面显示的结构图像已经满足你的要求了, 你可以把它保存为图片。 在这之前你可以使用 ray 命令来优化你的图像, 它可以使你的图像具有三维的反射及阴影特效:Pymol> rayPymol> png your_path/image_name最后就用该命令导出的图片结束这次笔记吧Pymol命令的语法与目标选择的表达上次介绍一些Pymol的基本命令。现在来具体说说 Pymol命令的语法,还有在选择操作目标应该如果表达。个人觉得这部分内容对学习Pymol来说是至关重要的。从上次讲的一些例子中不难看出,Pymol的命令都是由关键词(keyword )加上一些变量(argument )组成,格式如下:Pymol> keyword argument其中关键词(keyword )当然是必须的,而变量则不是必须的,比如退出命令quit就不需要附加变量:Pymol> quit。当然更多的命令通常是需要加变量的, 比如放大命令zoom , 但是你会发现即使你不加任何变量该命令也可以被执行,这是因为 Pymol 的许多命令有一个默认变量, 下面两个命令的作用是一样的,其中的目标选择 all 就是 zoom 的默认变量:Pymol> zoomPymol> zoom all还有些命令可以带多个参数,比如加色命令color ,它的用法如下:Pymol> color color-namePymol> color color-name, selection-expression第一个 color 虽然只带一个变量"color-name",但其实它包含了第二个默认变量all , 所以它的作用是把整个结构变成 "color-name" 的颜色。第二个 color 带两个变量, 和第一个的区别就是把默认的目标选择变量all 变成了 "selection-expression" ,也就是说只有被这个变量选中的部分才会被变成 "color-name" 定义的颜色。要注意的是, 如果一个命令带多个变量, 则这些变量之间必须用逗号","隔开。通过这个例子,大家可以发现,有些变量本身是很简单的,比如"color-name" ,就是一个颜色名字而已,没什么复杂的。另一些则不一样,比如 "selection-expression" ,它可以很简单,也可以非常的复杂。 这个东东, 我称之为选择表达, 对 Pymol 命令的使用非常重要,所以下面要详细的讲一下。o选择表达(selection-expression )表示的实际就是一些被选中的部 分,它们可以是一些个原子,一些个 Helix , 一些个Beta sheet ,或 者它们的混合物。你可以给你的选择表达起个名字,以便可以多次使用 它们。名字可以由大小写字母,数字以及下划线 口组成,但是因避免使 用下列符号:! # $ % 八 & * ( )'" | ' < > ? /选择表达由所谓的"selector" 加上"identfier” 组成,其中"selector"定义了某类属性,而"identifier"则在该类属性下需要被选择的部分。如下例:Pymol> select test, name c+o+n+ca其中"name"就是一个selector ,它表示在pdb文件中描述的原子的名字;"c+o+n+ca" 则是对应的"indentifier" ,它表示我们要选择pdb 文件中名字叫"ca+cb" 的原子(ca代表alpha carbon ,cb代表beta carbon )。整个语句的作用就是选择上诉的原子并命名为 "test",这 样我们可以在后面继续使用它。F表列出了大多数的selectorSelector简写Identifier 及例子symbole.chemical-symbol-list周期表中的元素符号Pymol> select polar, symbol o+nnamen.atom-name-list-可编辑修改-pdb文件中的原子名字Pymol> select carbons, name ca+cb+cg+cdresnr.residue-name-list氨基酸的名字Pymol> select aas, resn asp+glu+asn+glnresii.residue-identifier-listpdb文件中基团的编号Pymol> select mults10, resi 1+10+100residue-identifier-rangePymol> select nterm, resi 1-10altaltalternate-conformation-identifier-list一些单字母的列表,选择具有 2种构型的氨基酸Pymol> select altconf, alt a+bchainc.chain-identifier-list一些单字母或数字的列表Pymol> select firstch, chain asegis.segment-identifier-list一些字母(最多4位)的列表Pymol> select ligand, segi ligflagf.flag-nummer一个整数(0 3 1)-可编辑修改-Pymol> select f1, flag 0numeric_type nttext_typett.type-nummer一个整数Pymol> select type1, nt. 5type-string一些字母(最多4位)的列表Pymol> select subset, tt. HA+HCididexternal-index-number一个整数Pymol> select idno, id 23indexidx.internal-index-number一个整数Pymol> select intid, index 23sssssecondary-structure-type代表该类结构的单字母Pymol> select allstrs, ss h+s+l+”"F表是另一些Selector ,有关比较的:Selector简写Identifier 及例子bbcomparison-operator b-factor-value一个实数,用来比较b-factorPymol> select fuzzy, b > 12qqcomparison-operator occupancy-value一个实数,用来比较 occupancyPymol> select lowcharges, q > 0.5formal_charge fccomparison-operator formal charge-value一个整数,用来比较formal chargePymol> select doubles, fc. = -1partial_chargepc.comparison-operator partial charge-value一个实数,用来比较 partial chargePymol> select hicharges, pc. > -1另外有一些Selector是不需要Identifier 的,它们被列在下表中:Selector简写描述all*所有当前被Pymol加载的原子nonenone什么也不选hydroh.所有当前被Pymol加载的氢原子hetatmhet所有从蛋白质数据库HETATM记录中加载的原子visiblev.所有在被“可见”的显示的对象中的原子presentpr.所有的具有定义坐标的原子在Identifier中用到的原子以及氨基酸的命名规则可以在下面的网址中找到:http:/www.wwpdb.org/docs.html在选择表达中,selector还可以配合逻辑操作子(logical operator )使用,这样我们可以表达更加复杂的选择。这些操作子被列于下表中:Operator简写效果与例子not si! si选择原子彳U/、包括si中的Pymol> select sidechains, ! bbsi and s2si & s2选择既在si又在s2中的原子Pymol> select far_bb, bb & farfrm_tensi or s2si | s2选才? si或者s2中的原子(也就是包含全部的si和s2原子)Pymol> select all_prot, bb | sidechainsi in s2si in s2选择 si 中的那些原子, 其 identifiers (name, resi, resn,chain, segi)全部符合s2中对应的原子Pymol> select same_atom, pept in protsi like s2si l. s2选择si中的那些原子,其identifiers (name, resi) 符合s2中对应的原子Pymol> select similar_atom, pept like protsi gap Xsi gapX选择那些原子,其van der Waals 半径至少和si的vander Waals半径相差XPymol> select farfrm_ten, resi i0 gap 5si around Xsi a. X选择以si中任何原子为中心,X为半径,所包括的所有原子Pymol> select near_ten, resi i0 around 5选择以si中任何原子为中心,X为半径,然后把si扩s1 expand Xsi e. X展至该新的范围所包含的所有原子Pymol> select near_ten_x, neariO expand 3si within Xsi w. X选择以s2为中心,X为半径,并包含在si中的原子of s2of s2Pymol> select bbnearten, bb w. 4 of resi i0把选择扩展到全部residuebyres sibr. siPymol> select complete_res, br. bbneariO把选择扩展到全部objectbyobject sibo. siPymol> select near_obj, bo. near_res选择直接和si相连的原子neighbor sinbr. siPymol> select vicinos, nbr. resi i0这些逻辑选择还可以组合使用。比如你想选择chain b,但是不选择其中的 residue 88 :Pymol> select chain b and (not resi 88)在使用多重逻辑选择时,为了让 Pymol正确处理顺序,请使用括号,这样最里层括号里面的内容将会被最先处理,以此类推。好了,目标选择就先说到这里。其实关于目标选择还有所谓的“宏”可以用,可以简化表达式,准备下次说说。by Wei L u - www.donkeyhome.orgPyMOL 用法(教程三)Pymol 的选择宏上次具体讲了如何在Pymol 中怎么用 selection-expression 选取目标, 其实在某些情况下,还可以用 Pymol 提供的宏来选择操作目标。使用这个选择宏往往可以是一个原本很复杂的表达变得简单紧凑。例如我们想选择2vlo这个pdb文件中的"chain a"中的第100个基团的a炭原子,如果用 selection-expression 来表达的话是这样:Pymol> select chain a and resi 100 and ca如果用宏的,可以这样:Pymol> select a/100/ca是不是觉得简单了很多。好了,下面就来详细讲讲这个宏吧。因为这个宏是用来选择目标的,所以我称之为选择宏,它用斜杠"/" 来定义Identifier ,并且它使用上次介绍过的逻辑操作子"and" 。一个完整的,按顺序的选择宏的表达如下:。/object-name/segi-identifier/chain-identifier/resi-identifier/name-identifier之所以说选择宏是有顺序的,是因为 Pymol 就是靠顺序判断每个斜杠后面的东东都是什么东东。如果再细分一下的话, 其实这个选择宏有2 种写法, 一个是带开头的斜杠, 另一个是不带开头斜杠。区别是:如果不以斜杠开头,那么 Pymol 则认为你的表达式的最后一项就是选择宏的末尾的最后一项,也就是name-identifier 。例如:Pymol> show lines, a/100/caPymol> show lines, 100/ca如过以斜杠开头,那么 Pymol 就认为你是从选择宏的表达式的顶端开始的,也就是从 /object-name 开始的。例如:Pymol> zoom /2vl0/a/100/caPymol> zoom /2vl0/a/100细心的读者肯定发现了上面的例子中有两道斜杠中间什么内容也没有, 不会是写错了吧?当然不是,其实在这种情况下 Pymol 会默认选择这个两道斜杠中被省略的 Identifier 列表中的全部元素,也就是说被省略的部分被Pymol 当作了一个通配符。 例如上例中我要选择全部的 "segment" , 所以我就把它给省略不写了,呵呵,方便吧。在举些例子来说明一下:Pymol> color green, a/142/斜杠后面的 "name-identifier" 被省略了,所以第 142 号基团的素有原子都会变成绿色。Pymol> shwo cartoon, a/a 斜杠后面的 "resi-identifier" 以及最后斜杠后面的 "name-identifier" 被省略了,所以整个 a 链将以 cartoon 的方式被显示。Pymol> zoom /2vl0/b2 个斜杠间的 "segi-identifier" 被省略,所以所有的 b 链将被放大。最后总结一下, Pymol 的选择宏必须至少包含一个斜杠"/" ,以此来和 Pymol的 "select-expression" 区分;并且不能包含空格,因为 Pymol 是把宏作为一个词来读取的;还有就是其实 Pymol 在执行宏的时候首先是把它翻译成正常的"select-expression" ,然后再执行的。关于 cartooncartoon 经常被用来显示一个蛋白质的总体结构, 看起来也很漂亮。 这次就来说说它的具体用法。不久前本人刚搞定了一个Glucosyltransferase 的结构, 所以下面所有的例子都用来它来说明。cartoon 的命令格式如下:Pymol> cartoon type, (selection)总结一下 cartoon 的显示类型:-可编辑修改-automatic :默认的显示方式loop-可编辑修改-otube: 比loop粗点putty:这个比较有趣,按照 R-factor来显示,越高越粗-可编辑修改-ovalrectanglearrow :和rectangle几乎一样,就是多了个箭头dumbbell :在oval的基础上,在helix的边缘加上一个cylinderskip :隐藏,该图中隐藏了 6 120号氨基酸-可编辑修改-卜面说说如何设置cartoon的一些具体细节比较下面的2幅图:你会发现第一张图中 sheets 是平的,而当中的那个氨基酸的支链并没连接在sheet 上,这是因为为了显示的漂亮,把sheet 人为的抹平了。而第二张图中的sheets 则表达了蛋白质的真实走向, 所以氨基酸的支链也显示正常。 也就是说,如果你想表达某个局部的具体细节的时候,最好采用第二张图中的显示方式。张图对应的命令分别是:Pymol> set cartoon_flat_sheets, 1Pymol> set cartoon_flat_sheets, 0类似的命令对应于 loop ,就不举例子了:Pymol> set cartoon_smooth_loops, 1Pymol> set cartoon_smooth_loops, 0下面再说说cartoon 尺寸。Helix 的厚度和宽度:Pymol> set cartoon_oval_width, 0.2Pymol> set cartoon_oval_length, 1.5sheet 的厚度和宽度:Pymol> set cartoon_rect_width, 0.5Pymol> set cartoon_rect_length, 1.5loop 的半径:Pymol> set cartoon_loop_radius, 0.2如果你设置了 cartoon 的显示风格为 fancyPymol> set cartoon_fancy_helices, 1Pymol> set cartoon_fancy_sheets, 1这样你得到的 helix 的边上会带有一个很细的 cylinder , 也就是上面几张图中的显示方式。此时设置helix 的厚度,宽度,以及这个cylinder 的半径分别是:Pymol> set cartoon_dumbbell_width, 0.1Pymol> set cartoon_dumbbell_length, 2Pymol> set cartoon_dumbbell, 0.2依此类推,还可以设置和 putty , tube 等等显示类型相关的尺寸,就不一一类举了。最后再加几个还用的着的命令吧:上色:Pymol> set cartoon_color, green竟然还可以 refine ,呵呵,逗号后面可以接数字,好像1 20 都可以,数字越大优化的越大,感觉的确能变漂亮点:Pymol> set cartoon_refine, 20设置透明:Pymol> set cartoon_transparency, 0.5关于 cartoon 还有些命令,感觉不怎么常用,有些我也不知道是干什么的。有兴趣再研究吧。PyMOL 用法(教程四)关于 label在显示一个蛋白结构的某个细节的时候, 常常会需要给某些重要的氨基酸打上标签,这就需要用到 label 命令。label 的命令格式如下:Pymol> label selection, expressionselection 当然就是你要加标签的对象, expression 就是标签的内容, 可选的有:name, resn, resi, chain 等等。你也可以组合使用它们。 expression 也可以是你自定义的一段内容,这时候只要把内容用引号包含起来就行:Pymol> label selection, "user-defined expression"在下面这个例子中,我想把glucosyltransferase 中 UDP-Glucose 的 bindingpocket 标注出来:首先说明一下,该pdb 文件中 A 链是蛋白质, B 链是 UDP-Glucose 。Pymol> load glucosyltransferase.pdb, tmpPymol> extract upg, chain bPymol> extract pro, chain aPymol> delete tmp-可编辑修改-Pymol> select near, pro within 4.5 of upgPymol> hide allPymol> show sticks, upgPymol> show lines, nearPymol> label near, ("%s/%s") % (resn, resi)#("%s/%s"):设定显示格式。上面的图看起来有点乱,因为默认 Pymol在每个原子上都打上了标签。要想看起来顺眼点,需要一点加工。在这之前,让我们先看一下关于label的其他设置:投影模式,可选值0 (无投影),1 (object有投影到label上,但是label本身无投影),2 (object有投影到label ±, label也有投影),3 (object不投影到label上,label本身有投影):Pymol> set label_shadow_mode, 3文字颜色 :Pymol> set label_color, color-name, selection标签文字的轮廓的颜色 ,这样就让在例如白色背景上加白色标签成为了可能:Pymol> set label_outline_color, color-name, selection字体 , pymol 内置了 12 种字体, 编号从 5 16。 15 号和 16 号字体是 unicode的:Pymol> set label_font_id, 5字体大小 , 如果为正值, 则单位就是正常的 px 。 你也可以用负值, 则单位是 ?:Pymol> set label_size, -0.5Pymol> set label_size, 4设置 label 位置 ,用下列命令可以设置label 离默认位置的三维偏移值,在需要给 spheres 加标签的时候有用:Pymol> set label_position, (x,y,z)最后说说怎样用单个字母标注氨基酸。首先在$HOME/.pymolrc中加入:# start $HOME/.pymolrc modificationsingle ='VAL':'V', 'ILE':'I', 'LEU':'L', 'GLU':'E', 'GLN':'Q', 'ASP':'D', 'ASN':'N', 'HIS':'H', 'TRP':'W', 'PHE':'F', 'TYR':'Y', 'ARG':'R', 'LYS':'K', 'SER':'S', 'THR':'T', 'MET':'M', 'ALA':'A', 'GLY':'G', 'PRO':'P', 'CYS':'C'# end mod
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 营销创新


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!