【软件使用】PyMol基础教程
写在前面
本篇主要介绍PyMol的基础操作,有了前面入门基础以后,这一篇学起来会很快的。
1.命令输入窗口
优先选择输入框1。
image.png
2.查看切换工作路径(pwd)
默认打开和保存文件,都是在工作路径中。因此设定合适的工作路径,可以提供效率。
双击PDB文件,打开PyMOL软件,会自动调整工作路径为PDB文件所在路径。
- 命令 pwd; 查看工作路径;
- 命令 cd D:/test; 切换工作路径到D盘下面的test文件夹。在执行命令前,确保D盘下面有test 文件夹。
3.下载蛋白(fetch)
fetch 命令可以根据PDB ID编号下载蛋白结构到工作路径,并载入到PyMOL中显示,在PyMOL中的object的名字默认是PDB ID,可通过name参数进行修改。 从PyMOL 1.8开始,默认的格式是cif,可通过type参数修改文件的格式,也支持根据配体ligand ID的编号下载小分子。
示例:
- fetch 6FYZ # 下载编号是6FYZ的蛋白,文件格式是cif。
- fetch EBE # 下载编号是EBE的配体小分子,文件格式是cif。
- fetch 6MVD,name=”test”,type=pdb # 下载文件格式为pdb的6MVD的蛋白,载入PyMOL中设置名字为test.
type后面的参数不是字符串,不能加引号
type 支持的文件格式有:
type = cif|mmtf|pdb|pdb1|2fofc|fofc|emd|cid|sid|cc
默认是从pdb网站上下载数据的,可通过设置fetch_host 修改下载源。
set fetch_host,pdb set fetch_host,pdbe set fetch_host,pdbj
pdb 数据库有2个镜像库,一个是欧洲的pbde,另一个是日本的pdbj。 如果其中一个源不能使用的时候,可以尝试切换到其他源。
4.载入蛋白(load)
工作路径中已经存在PDB文件,如4hbk.pdb。 可通过load 命令进行加载。 命令:
load 4hbk.pdb
load 和 fetch 的区别,load 是指定文件的名字,加载的是路径下的本地文件,而fetch是分子的ID号,需要从PDB上在线抓取。
5.设置颜色
5.1 设置背景颜色(bg_color)
如,设置背景颜色为白色:
bg_color white
5.2 设置surface的颜色(cartoon_color)
设置surface的颜色为red。[展示的时候提前展示为surface]
set surface_color,red
color blue
unset surface_color #取消当前的设置
5.3 着色(color)
color red,object name
6.设置surface的大小(solvent_radius)
设置surface的大小,把surface设置细一点
set solvent_radius, 1.6
set solvent_radius, 0.8,obj02
7.开关单双键模式 valence
set valence,1 #开启双键模式。
set valence,0 #关闭双键模式。
8.开启球棍模型ball-stick
8.1 点击 Action -> preset -> ball and stick。
8.2 命令行模式
set stick_ball,1
set stick_ball_ratio,1.7
as stick
9.删除和保存
- 删除object
delete objectName
delete all
- 保存object
cmd.save(filename[, selection[, state[, format]]])
save file [,(selection) [,state [,format]] ]
PyMOL>save 01.pdb, ONLYprotein,
Save: wrote “01.pdb”.
PyMOL>cmd.save(“0.pdb”,”ONLYprotein”)
- 保存图片(png)
png filename.png
- 保存蛋白序列
save xxx.fasta,xxx
10.修改细节
10.1 设置label的小数位数
默认距离和角度是1位,通过下面命令可以修改,显示的位数。
set label_digits,2
set label_distance_digits,2
set label_dihedral_digits,2
set label_angle_digits, 2
10.2 设置label的字体大小
label字体的默认大小是14pt, 单位是pt。
set label_size,20
除了使用pt单位,也可以使用Angstrom 单位,如设置字体大小为 1.2 Angstrom。
set label_size,-1.2
10.3 调整 mesh 粗细
set mesh_radius,0.2
ray
ray 方可看到调整后的状态。
10.4 设置stick的粗细
set stick_radius, 0.12
10.5 设置小球的大小 sphere_scale
首先要展示到sphere模式,默认sphere_scale 是1,通过调整sphere_scale来调整 小球的大小。
set sphere_scale,0.5
11.蛋白的展现形式(show,as)
命令如下:
as cartoon
show cartoon,objectname
as stick,all
as stick,objectname
as stick,selection express
as stick,resn arg
默认的object name是all。
11.1 cartoon 模式
pymol 中内置了10种cartoon 模式:
- skip (-1) 不显示
- automatic (0) (use ss property) 默认模式
- loop (1)
- rectangle (2)
- oval (3)
- tube (4)
- arrow (5)
- dumbbell (6) (see also cartoon_fancy_helices)
- putty (7) (b-factor scaling)
- dash (8) (new in PyMOL 1.8.2)
在命令行窗口输入下面的命令对各种模式进行感受。
cartoon loop
cartoon tube
cartoon putty
11.2 cartoon helix 模式
在cartoon automatic 模式下 pymol 中内置了3种cartoon helix模式:
- 默认default模式
- Fancy Helices 模式 两端是尖尖
- Cylindrical Helices 模式 圆柱体
开启 Fancy 模式
set cartoon_fancy_helices, 1
开启 cylindrcal 模式
set cartoon_cylindrical_helices, 1
设置圆柱的粗细:
set cartoon_helix_radius,0.9
set cartoon_helix_radius,2.5
启用默认 default 模式:
set cartoon_fancy_helices, 0
set cartoon_cylindrical_helices, 0
12.选择,残基(select)
选择所有的碳原子: select catoms, elem C
选择蛋白:select protein, (byres polymer & name CA)
选择核酸: select nucleic, (byres polymer & name P)
选择RNA: select rna, (byres polymer & name O2’)
选择DNA: select dna, (nucleic & !rna)
13. 查看蛋白中的二硫键
show sticks, (cys/ca+cb+sg) and byres (cys/sg and bound_to cys/sg)
14. 删除配体分子5A以外的水分子
remove resn hoh and (resi 307 gap 5)
15. 叠合两个object(super)
自动进行全局叠合。
super 会把两个object进行叠合,和align的区别主要是
- super 主要是基于机构进行叠合;
- align 主要是基于序列进行叠合。
当两个蛋白的序列相似度较低的时候,使用super叠合的效果比align叠合的效果好。
super p1, p2
指定叠合部分
super p1 & alt A+'', p2 & alt B+''
实战
super obj03 & resi 2-191 & chain K, obj04 & resi 2-191 & chain C
16.颜色的名字
PyMOL 中内置超过100种颜色 https://pymolwiki.org/index.php/Color_Values>.
5.4 设置二级结构的颜色
PyMOL中内置了3种二级结构着色策略。
helix sheet loop
red yellow green (策略1)
cyan magenta salmon (策略2)
cyan red magenta (策略3)
除了上述内置的着色策略,我们还可以自定义二级结构的颜色。
方法一:
选定二级结构对应的氨基酸残基,然后设置颜色。
方法二(推荐):
缩写与扩写。
ss:second structure;
h:helix;
s:sheet;
l+'':loop
color red, ss h
color yellow, ss s
color green, ss l+''
推荐一套配色策略,感觉比内置的好看一点。
color yellow,ss s
color grey,ss l+''
color teal,ss h