Inserir imagens matplotlib em um dataframe do pandas
OBJETIVO: Atualmente, estou trabalhando com o rdkit para colorir as estruturas de minhas moléculas de acordo comrdkit.Chem.Draw.SimilarityMaps
. Agora, eu gostaria de usar as imagens matplotlibSimilarityMaps
para apresentá-los em um dataframe do pandas e exportar esta tabela na forma de um arquivo html.
CÓDIGO: Eu tentei fazer isso com o seguinte código
import pandas as pd
from rdkit import Chem
from rdkit.Chem import Draw
from rdkit.Chem.Draw import SimilarityMaps
from rdkit.Chem.Draw import IPythonConsole #Needed to show molecules
from rdkit.Chem.Draw.MolDrawing import MolDrawing, DrawingOptions
df = pd.DataFrame({'smiles':['Nc1nc(NC2CC2)c3ncn([C@@H]4C[C@H](CO)C=C4)c3n1','CCCC(=O)Nc1ccc(OCC(O)CNC(C)C)c(c1)C(C)=O','CCN(CC)CCNC(=O)C1=CC=C(C=C1)NC(=O)C','CC(=O)NC1=CC=C(C=C1)O','CC(=O)Nc1sc(nn1)[S](N)(=O)=O']})
def getSim(smi):
mol = Chem.MolFromSmiles(smi)
refmol = Chem.MolFromSmiles('c1ccccc1')
fp = SimilarityMaps.GetMorganFingerprint(mol, fpType='bv')
fig, maxweight = SimilarityMaps.GetSimilarityMapForFingerprint(refmol, mol, SimilarityMaps.GetMorganFingerprint)
return fig
df['map'] = df['smiles'].map(getSim)
df.to_html('/.../test.html')
Quando abro o arquivotest.html
, a coluna do mapa contém as informações "Figura (200x200)". Verifico se a coluna do mapa do quadro de dados contém o objeto: tudo está bem no python, mas não no arquivo html.
PERGUNTA, QUESTÃO: Não tenho certeza de como obter um dataframe com imagens e gostaria de ter a ajuda da comunidade para esclarecer esse assunto.
desde já, obrigado