NGLview 是Jupyter Notebook的小插件, 可用于交互地可视化分子结构, 可以查看分子动力学轨迹数据. 支持读取文件数据。
程序的源代码可以在网上Github里查看, 同时也可以在PyPI和bioconda内获取. NGLview在服务器端采用python, 而在客户端则采用JS来实现, 与Jupyter的整合则通过ipywidgets
包实现. 客户端采用NGL Viewer来提供WebGL的加速分子可视化。
NGLview的主要对象是NGLWidget
类, 这个类可以用NGLWidget()
来直接构建, 也可以方便地通过读取数据或其他分子对接来构建. 读取的数据类型包括Structure
, Trajectory
和Volume
.
NGLview支持多种显示, 如图NGL Viewer一样强大, 可以支持如cartoon, spacefill, 球棍式等等. 由于基于WebGL技术, 分子可视化速度很快很流畅. 借用其API, NGLview可以实现强大的显示功能, 例如生成截图, 在notebook中创建多个小部件并同步显示. 也能支持选择原子.
NGLview支持从多种库中读取结构和轨迹, 包括biopython, ase, cctbx, mdanalysis, pyrosetta, pytraj, rdkit等. 也能直接从PDB数据库中读取数据. NGLview已经被AmberTools的pytraj和pdb4amber调用于进行模拟的设置, Notebook的远程使用, 基本的分子可视化, 轨迹分析等. NGLview也被Molecular Projection Explorer, molPX用于Notebook的分子动力学坐标投影. 蛋白蛋白相互作用对接分子包pida 也采用了NGLview来可视化对接结果.
#通过conda-forge channel
conda install nglview -c conda-forge
或者
conda upgrade nglview --force
通过pip
pip install nglview
jupyter-nbextension enable nglview --py --sys-prefix
参考:
https://www.helplib.com/GitHub/article_131683
https://github.com/arose/nglview
http://nglviewer.org/nglview/latest/
https://pypi.org/project/nglview/