Este documento contém exemplos práticos de como gerar visualizações gráficas com o BioHub.
Antes de começar, instale as dependências de visualização:
pip install -r requirements.txtOu manualmente:
pip install matplotlib numpy squarifypython3 biohub.py physchem "MKTAYIAKQRQISFVKSHFSRQ" --plot-treemap composicao_treemap.pngIdeal para:
- Comparação visual rápida de composição
- Identificação de aminoácidos predominantes
- Apresentações e publicações
python3 biohub.py physchem "MKTAYIAKQRQISFVKSHFSRQ" --plot-composition composicao_barras.pngIdeal para:
- Análise quantitativa detalhada
- Comparação com outros trabalhos
- Publicações científicas tradicionais
python3 biohub.py physchem "MKTAYIAKQRQISFVKSHFSRQ..." --plot-hydro hydro.pngUsa janela de 9 resíduos (padrão Kyte-Doolittle original).
python3 biohub.py physchem "SEQUENCE..." --plot-hydro hydro_membrane.png --window 19Janelas maiores (19-21) são melhores para identificar domínios transmembrana.
Interpretação:
- Picos > 1.6: possíveis hélices transmembrana
- Regiões hidrofílicas: loops extracelulares/citoplasmáticos
python3 biohub.py sasa proteina.pdb --plot-profile sasa_profile.pngCom alta precisão:
python3 biohub.py sasa proteina.pdb --plot-profile sasa_profile.png --num-points 2000Mais pontos = maior precisão (mas mais lento).
Interpretação:
- Picos altos (>20 Ų): resíduos expostos (potenciais epitopos)
- Vales baixos (<5 Ų): resíduos enterrados (núcleo hidrofóbico)
python3 biohub.py contacts proteina.pdb --plot contact_map.pngpython3 biohub.py contacts proteina.pdb --plot contact_map.png -t 10.0Aumentar threshold (ex: 10.0 Å) mostra mais contatos de longo alcance.
Interpretação:
- Padrões diagonais: hélices alfa
- Padrões paralelos: folhas beta
- Blocos fora da diagonal: domínios estruturais
# Gera todos os gráficos de uma vez + dados CSV
python3 biohub.py physchem "MKTAYIAKQRQISFVK..." \
--plot-treemap treemap.png \
--plot-composition barras.png \
--plot-hydro hydro.png \
--window 11 \
-o propriedades.csv# Combina SASA com PyMOL e gráficos
python3 biohub.py sasa proteina.pdb \
--plot-profile sasa_profile.png \
--write-pdb proteina_sasa.pdb \
--pymol visualizacao.pse \
-o sasa_data.csv# Mapa de contatos + CSV
python3 biohub.py contacts proteina.pdb \
--plot contact_map.png \
-t 8.0 \
-o contatos.csv# Proteína 1
python3 biohub.py physchem "$(python3 biohub.py fasta prot1.pdb)" \
--plot-treemap prot1_comp.png
# Proteína 2
python3 biohub.py physchem "$(python3 biohub.py fasta prot2.pdb)" \
--plot-treemap prot2_comp.pngCompare visualmente os treemaps para identificar diferenças na composição.
# Identifique regiões expostas
python3 biohub.py sasa anticorpo.pdb --plot-profile epitopos.png
# Combine com hidrofobicidade
python3 biohub.py physchem "SEQUENCE" --plot-hydro hydro_epitopos.pngEpitopos geralmente são:
- Alta exposição (SASA alto)
- Hidrofílicos (hidrofobicidade negativa)
# Sequência completa
SEQ="MKTAYIAKQRQISFVKSHFSRQLEERLGLIEVQAPILSRVGDGTQDNLSGAEK..."
# Perfil com janela grande
python3 biohub.py physchem "$SEQ" \
--plot-hydro membrane_topology.png \
--window 21
# Composição (proteínas de membrana são ricas em hidrofóbicos)
python3 biohub.py physchem "$SEQ" --plot-treemap membrane_comp.png# Identifique regiões desordenadas/flexíveis
python3 biohub.py sasa proteina.pdb \
--plot-profile flexibility.png \
--num-points 1500
# Mapa de contatos para ver domínios estruturados
python3 biohub.py contacts proteina.pdb \
--plot domains.png \
-t 8.0Regiões com SASA muito variável podem ser flexíveis → candidatas a truncagem.
--plot-treemap figura.png- Tamanho razoável
- Boa qualidade (300 DPI)
- Suportado por todos os programas
--plot-treemap figura.pdf- Escalável sem perda de qualidade
- Ideal para revistas científicas
- Pode ser editado em Illustrator/Inkscape
--plot-treemap figura.svg- Totalmente editável
- Bom para apresentações
- Pode abrir em navegadores
pip install matplotlib numpy squarifyTreemap usará visualização alternativa. Para treemap completo:
pip install squarifypython3 -c "import matplotlib, numpy, squarify; print('OK!')"Se os arquivos PNG ficarem muito grandes, ajuste a resolução:
# Edite biohub_viz.py e mude:
plt.savefig(output_file, dpi=150) # Ao invés de 300Para apresentações, aumente as fontes editando biohub_viz.py:
plt.rcParams['font.size'] = 14 # Adicione no início das funções- Para publicações: Use PDF ou SVG
- Para apresentações: Use PNG com DPI 300
- Para web: Use PNG com DPI 150
- Combine múltiplos gráficos: Use Inkscape ou PowerPoint para layout
# Baixa estrutura
python3 biohub.py fetchpdb 4HHB --protein-only -o hemoglobina.pdb
# Análise de contatos
python3 biohub.py contacts hemoglobina.pdb --plot hb_contacts.png
# SASA
python3 biohub.py sasa hemoglobina.pdb --plot-profile hb_sasa.png --num-points 500# Baixa estrutura
python3 biohub.py fetchpdb 1CRN --protein-only -o crambin.pdb
# Extrai sequência
SEQ=$(python3 biohub.py fasta crambin.pdb)
# Análise completa
python3 biohub.py physchem "$SEQ" \
--plot-treemap crambin_comp.png \
--plot-hydro crambin_hydro.png \
--window 7- Kyte & Doolittle (1982) - Perfil de hidrofobicidade
- Lee & Richards (1971) - Método SASA
- Shrake & Rupley (1973) - Algoritmo SASA
Para reportar problemas ou sugerir melhorias nas visualizações, abra um issue no repositório do projeto.