Visualize a 3D biology model

3D模型插件

长久以来,生物学的三维模型通常都是通过Java插件来显示,这个比Adobe Flash还要古老的Applet简直是古董级的东西,直到近期才开始使用原生技术。

3Dmol.js

这是一个基于WebGL的Javascript库,支持pdb, sdf, mol2, xyz, 和cube这些完全不认识的格式。没错,生物界可真的是封闭的很,每个人都喜欢提出一个新的格式,虽然很多都是基于XML的存在。

Nicholas Rego and David Koes 3Dmol.js: molecular visualization with WebGL Bioinformatics (2015) 31 (8): 1322-1324 doi:10.1093/bioinformatics/btu829

HOWTO

和大部分javascript库一样,只需要一个canvas,然后就可以在上面显示一些模型了,使用非常简单:

1
<div id="container-model" class="mol-container"></div>

然后初始化:

1
2
3
4
var element = $("#container-model")
var config = { defaultcolors: $3Dmol.rasmolElementColors,
backgroundColor: 'white' };
$3Dmol.createViewer( element, config );

最后加载一个模型:

1
2
3
4
v.addModel( data, pdb_link );
v.setStyle({}, {cartoon: {color: 'spectrum'}});
v.zoomTo();v.render();
v.zoom(1.2, 1000);

然后就可以了。

结果:

Interactive: