Software de visualização molecular em Notebooks Jupyter (IPython)

Sep 16 2020

Os cadernos Jupyter sempre foram uma ótima maneira de criar gráficos de alta qualidade e escrever códigos.

Os recursos também continuam a melhorar com pacotes como Jupyter Lab e agora Jupyter Books , que continuam a melhorar o ambiente e os recursos do ecossistema Jupyter.

No entanto, nunca tive sorte em visualizar estruturas 3D, como arquivos xyz no Jupyter Notebook.

Quais pacotes podem ser usados ​​para visualizar estruturas 3D em Jupyter (IPython)?

Liste todos os prós / contras e um link para outras instruções de documentação / instalação. Um exemplo simples de algum código também seria apreciado.

Respostas

5 GeoffHutchison Sep 22 2020 at 01:06

3Dmol.js

Eu recomendo altamente 3Dmol.js por meio da extensão py3dmol.

3Dmol.js é uma biblioteca JavaScript orientada a objetos, baseada em WebGL, para visualização molecular online - não requer Java! Com 3Dmol.js, você pode adicionar visualizações moleculares lindamente renderizadas aos seus aplicativos da web. Características incluem:

  • suporte para formatos pdb, sdf, mol2, xyz e cubo
  • computação de superfície molecular paralelizada
  • estilos de esfera, vara, linha, cruz, desenho animado e superfície
  • seleção e estilo com base em propriedades atom
  • rótulos
  • interatividade clicável com dados moleculares
  • formas geométricas incluindo esferas e setas

3Dmol.js suporta XYZ, CIF, PDB, MMTF, .. uma grande variedade de formatos de arquivo , incluindo dados volumétricos, como arquivos de cubo gaussiano, VASP, etc.

Alguns exemplos:

  • exemplos oficiais
  • combinando RDKit e py3dmol para conformações
  • renderizando orbitais moleculares
  • birdlet blog
9 Camps Sep 16 2020 at 01:05

NGLVIEW

Eu descobri isso muito recentemente, quando estava usando o MDAnalysis para brincar com as trajetórias dinâmicas moleculares. Portanto, não posso escrever sobre prós / contras.

Local: https://github.com/nglviewer/nglview

Do site:

Um widget IPython / Jupyter para visualizar interativamente estruturas e trajetórias moleculares. Utiliza o NGL Viewer incorporável para renderização. Suporte para mostrar dados do sistema de arquivos, RCSB PDB, simpletraj e de objetos de bibliotecas de análise mdtraj, pytraj, mdanalysis, ParmEd, rdkit, ase, HTMD, biopython, cctbx, pyrosetta, Estrutura de Schrodinger

6 MattHorton Sep 25 2020 at 03:25

Em segundo lugar, para qualquer tipo de visualização molecular, é rápido e funciona bem com grandes simulações.

Para visualização atomística de estruturas de cristal (por exemplo, cristais inorgânicos de pequenas células), o Crystal Toolkit tem uma boa integração Jupyter que está intimamente integrada ao pymatgen . Esta opção é destinada a pessoas que fazem ciência de materiais e que desejam visualizações diretas e literais dos objetos Python com os quais estão trabalhando, por exemplo, células unitárias, ligações específicas definidas, isosuperfícies de densidade de carga, codificação por cores por propriedades do site, etc.

(Como isenção de responsabilidade, eu desenvolvo o Crystal Toolkit, um trabalho em andamento com mais documentos em breve, mas estou feliz em responder a perguntas.)