上面的图看起来有点乱,因为默认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.5 Pymol> set label_size, 4 设置label位置,用下列命令可以设置label离默认位置的三维偏移值,在需要给spheres加标签的时候有用:
Pymol> set label_position, (x,y,z) 最后说说怎样用单个字母标注氨基酸。 首先在$HOME/.pymolrc中加入:
# start $HOME/.pymolrc modification
single ={'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 modification
用法,用single[resn]代替resn:
Pymol> label n. CG and i. 230+246, single[resn] 下面是改进过的图片:
是不是看起来好多了,下面是具体的代码,其中关于电子密度图的设置请见下一节:
Pymol> select near, resi 139+229+230+233+246+499+519+520 Pymol> as cartoon, pro
Pymol> 鼠标操作:显示near的sidechain Pymol>set_color grey1, [224,224,224] Pymol> set cartoon_color, grey1
Pymol> set cartoon_transparency, 0.3 Pymol> set cartoon_fancy_helices, 1
Pymol> label n. CB and near, (\Pymol> 进入Editing模式,按住ctrl+鼠标右键移动label到合适位置 Pymol> set cartoon_transparency, 0.3 Pymol> set label_font_id, 13 Pymol> set label_size, 26 Pymol>bg_color white
Pymol> 进入measurement模式测量我们所需要的距离
Pymol> set dash_length, 0.015 Pymol> set dash_radius, 0.015 Pymol> set dash_gap, 0.6 Pymol> set dash_color, grey 在pymol中导入电子密度图
假设我们已经有了一个蛋白质的pdb文件(protein.pdb)和mtz(protein.mtz)文件,这样我们就可以用fft(Fast Fourier Transform)命令生成electron density map,以便在pymol中导入。 fft的命令格式如下:
fft HKLIN protein.mtz XYZIN protein.pdb MAPOUT 2fofc.ccp4 回车后进入fft环境,还需要指定一些参数: LABIN F1=FWT PHI=PHWT GRID SAMPLE 5 END
上诉第2句“GRID...”用来指定生成电子密度图的精细程度。默认值是3,表示生成的“网格”大小是最大分辨率的三分之一,以此类推。 回车之后电子密度图就搞定了,名字叫2fofc.ccp4
然后就可以在pymol中导入了。首先导入pdb文件glucosyltransferase.pdb,然后电子密度图:
首先说明一下,该pdb文件中A链是蛋白质,B链是UDP-Glucose。 Pymol> load glucosyltransferase.pdb, pro Pymol> load 2fofc.ccp4
你会发现,还看不见density。打开Wizard -- Density,怎么样,看见了吧。按住ctrl键和鼠标右键可以移动density,或者点击Density Map Wizard中的\和\。 不过显示全部的density map并不是我们的目的,因为这样显的很乱,也看不到什么细节。下面的例子是仅仅显示UDP-Glucose的电子密度图。 Pymol> remove resn HOH Pymol> select upg, chain b Pymol> as cartoon, pro Pymol> as stick, upg Pymol> orient, upg
Pymol>isomeshupg-d, 2fofc, 2.0, upg, carve=1.5 Pymol> set stick_radius, 0.2
Pymol> set mesh_radius, 0.01#让电子密度图的网格细一点,好看 效果图如下:
上诉命令中,其余设置请见上一节label,和显示电子密度相关的就是isomesh了,它的用法如下:
Pymol>isomesh name, map, level [,(selection) [,buffer [,state [,carve ]]]]
? ? ? ? ? ? ?
name: 给这个mesh isosurface随便起个名字。 map: 就是刚才load的那个2fofc。 level: 轮廓值,越大轮廓越细。 selection: 要表达的对象 buffer: 没用过 state: 没用过
carve: 以selection中的任何原子为中心,半径为该值,所包含的全部原子,画出他们的density OK!搞定。