RDKit|使用MolDraw2DCairo模块绘制分子
生活随笔
收集整理的這篇文章主要介紹了
RDKit|使用MolDraw2DCairo模块绘制分子
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
文章目錄
- 一、繪制png:MolDraw2DCairo
- 二、繪制svg:MolDraw2DSVG
- 三、繪制png設(shè)置(svg設(shè)置類似)
一、繪制png:MolDraw2DCairo
先導(dǎo)入所要用到的庫和MolDraw2DCairo模塊。
from rdkit import Chem from rdkit.Chem.Draw import rdMolDraw2D from IPython.display import Image- 首先,創(chuàng)建一個Cairo drawer:Chem.Draw.rdMolDraw2D.MolDraw2DCairo(arg1, arg2),同Chem.Draw.MolDraw2DCairo(arg1, arg2)
arg1和arg2分別是繪制圖像的長和寬 - 接著,準(zhǔn)備待繪制的分子:PrepareMolForDrawing(mol, kekulize=True ,addChiralHs=True, wedgeBonds=True, forceCoords=False)
為了畫出更好看的分子,需要進行一些預(yù)處理。可以處理的選項有:計算凱庫勒式、手性中心補氫、手性中心添加楔形鍵、生成2D坐標(biāo) - 開始繪制:DrawMolecule()
- 結(jié)束繪制:FinishDrawing()
- 輸出結(jié)果:WriteDrawingText(file_name)
二、繪制svg:MolDraw2DSVG
- 首先,創(chuàng)建一個svg drawer:Chem.Draw.rdMolDraw2D.MolDraw2DSVG(arg1, arg2),同Chem.Draw.MolDraw2DSVG(arg1, arg2)
arg1和arg2分別是繪制圖像的長和寬 - 接著,準(zhǔn)備并繪制分子,兩個步驟合二為一:PrepareAndDrawMolecule(drawer, mol, …)
- 結(jié)束繪制:FinishDrawing()
- 獲取結(jié)果:GetDrawingText(file_name)
三、繪制png設(shè)置(svg設(shè)置類似)
- 實例化一個參數(shù)器:do = rdMolDraw2D.MolDrawOptions()
- 將分子鍵的寬度設(shè)置為4:do.bondLineWidth = 4
- 將分子鍵的長度設(shè)置為30:do.fixedBondLength = 30
- 將分子順時針旋轉(zhuǎn)30度:do.rotate = 30
- 修改原子標(biāo)簽:do.atomLabels[2] = ‘OH group’
- 應(yīng)用設(shè)置:SetDrawOptions(do)
本文參考自rdkit官方文檔和一段項目代碼。
代碼及源文件在這里。
總結(jié)
以上是生活随笔為你收集整理的RDKit|使用MolDraw2DCairo模块绘制分子的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 论文纠错和管理文献工具
- 下一篇: hbase基础操作命令