解决RDkit输入smiles画分子的二维图时出现保存不了图片的问题: AttributeError: ‘Image‘ object has no attribute ‘save‘
问题描述
用RDkit输入smiles画分子的二维图的时候出现保存不了图片的问题,代码如下:
from rdkit.Chem import Draw
from rdkit import Chem
smis=['COC1=C(C=CC(=C1)NS(=O)(=O)C)C2=CN=CN3C2=CC=C3','C1=CC2=C(C(=C1)C3=CN=CN4C3=CC=C4)ON=C2C5=CC=C(C=C5)F','COC(=O)C1=CC2=CC=CN2C=N1','C1=C2C=C(N=CN2C(=C1)Cl)C(=O)O',
]mols=[]
for smi in smis:mol = Chem.MolFromSmiles(smi)mols.append(mol)
img=Draw.MolsToGridImage(mols,molsPerRow=4,subImgSize=(300,300),legends=['' for x in mols])
img.save('filename.png')
会报错如下:
AttributeError: ‘Image’ object has no attribute ‘save’
原因分析:
问题出在这里:
img=Draw.MolsToGridImage(mols,molsPerRow=4,subImgSize=(300,300),legends=['' for x in mols])
Draw.MolsToGridImage()里的属性 returnPNG 要设置成 False,才能返回图片,改为:
img=Draw.MolsToGridImage(mols,molsPerRow=4,subImgSize=(300,300),legends=['' for x in mols],returnPNG=False)
解决方案:
改成
from rdkit.Chem import Draw
from rdkit import Chem
smis=['COC1=C(C=CC(=C1)NS(=O)(=O)C)C2=CN=CN3C2=CC=C3','C1=CC2=C(C(=C1)C3=CN=CN4C3=CC=C4)ON=C2C5=CC=C(C=C5)F','COC(=O)C1=CC2=CC=CN2C=N1','C1=C2C=C(N=CN2C(=C1)Cl)C(=O)O',
]mols=[]
for smi in smis:mol = Chem.MolFromSmiles(smi)mols.append(mol)
img=Draw.MolsToGridImage(mols,molsPerRow=4,subImgSize=(300,300),legends=['' for x in mols],returnPNG=False)
img.save('filename.png')
成功保存图片,解决撒花~
解决RDkit输入smiles画分子的二维图时出现保存不了图片的问题: AttributeError: ‘Image‘ object has no attribute ‘save‘相关推荐
- 【机器学习】python使用matplotlib进行二维数据绘图并保存为png图片
端到端机器学习导航: [机器学习]python借助pandas加载并显示csv数据文件,并绘制直方图 [机器学习]python使用matplotlib进行二维数据绘图并保存为png图片 [机器学习]p ...
- 运用SolidWorks三维图型转二维图时的三视图倾斜问题(三维图的基准面不正确)
用solidworks转二维工程图的二维图倾斜问题 问题简介 解决方法 问题简介 目前三维建模有很多软件,在不同软件之间可以通过把文件转换为中性文件(.igs,.stp等格式),实现不同软件之间的建模 ...
- AttributeError: 'Request' object has no attribute 'is_xhr' 报错的解决办法
在用 Flask+VUE 做前后端分离的数据可视化项目时,遇到了这个报错:AttributeError: 'Request' object has no attribute 'is_xhr' 是 We ...
- MATLAB-最简单基础的画二维图(点图、折线图、拟合曲线)
之前写过一篇关于画matlab折线图的博客,但是写的非常潦草.也算是为了以后自己方便看,打算重新把画二维图部分再写一下,因此有了这篇博客. 画二维图形主要使用plot函数,使用方法说明:(官网) 1. ...
- CREO2——解决CREO生成的二维图drw转换成CAD的dwg格式尺寸失真问题
今天因为要加工零件,卖家必须要dwg格式的CAD二维图,作为一个多年不用AutoCAD的小白,当初学的那一点点早就忘光了. 然后想起来之前用CREO生成过二维图,挺好使,就再次直接生成,可是居然失真了 ...
- ThoughtWorks.QRCode 生成QR二维码时提示“索引超出了数组界限”的原因和解决方法
ThoughtWorks.QRCode 生成QR二维码时提示"索引超出了数组界限"的原因和解决方法 参考文章: (1)ThoughtWorks.QRCode 生成QR二维码时提示& ...
- AttributeError: 'NoneType' object has no attribute 'sc' 解决方法(二)
上一次本以为可以解决了这个问题,然而并没有那么地简单.博主最近在edx网站学习pyspark,想打一下视频上的代码,结果报错了,依旧是报了"AttributeError:'NoneType' ...
- matlab画二维图彩图,matlab二维图形绘制.pdf
MATLAB 绘二维图 数据可视化的目的在于:通过图形,从一堆杂乱的离散数据中观察数 据间的内在关系,感受由图形所传递的内在本质. MATLAB 一向注重数据的图形表示,并不断地采用新技术改进和完备其 ...
- matlab画图总结——二维图plot函数、图形标注和坐标轴控制、饼图、条形图、排列图;三维图的绘制
Matlab画图总结 1. 二维数据曲线图 1.1 绘制二维曲线的基本函数 1.plot()函数 2. 含多个输入参数的plot函数 3. 含选项的plot函数 4. 双纵坐标函数plotyy 1.2 ...
最新文章
- Elasticsearch的javaAPI之query dsl-queries
- 使用聚类算法进行标签传播学习(Clustering for Semi-Supervised Learning)
- 页面切换语言包使用session不用cookie
- Effective C# 学习笔记(八)多用query语法,少用循环
- php mysql 数据字典_php如何生成mysql数据字典
- 吉林省统考计算机英语作文,2019年吉林省学位英语作文必背范文(我最……的题材) - 希赛网...
- dst发育筛查有意义吗_儿童视力筛查,都筛些啥?
- linux 7 改网卡名称,CentOS7修改网卡名称
- numpy.zeros(np.zeros)
- Logitech Control Center 3.9.8 特别版 Mac 罗技USB键盘和鼠标管理软件
- MyEclipse2018安装破解教程
- Power bi 3.10 折线和堆积柱形图
- 微软远程桌面mac/ios/android客户端
- 吉林大学计算机专硕和学硕的区别,在吉林大学在职研究生项目中专硕和学硕的区别是什么...
- Android 上传头像(文件)到服务器
- ie浏览器打开aspx文件乱码_关于ASP使用IE8下载文件,文件内容乱码问题
- Xshell SSH免密登录
- 小白兔—雪花-吕中琪
- redis BITFIELD详解
- fixture 'xxx' not found
热门文章
- 杂谈:我对苹果哲学的理解──苹果的骗局zz (3086字)
- 风控场景下的常用特征分箱介绍:BestKs分箱、卡方分箱、聚类分箱等
- 如何制作一个图像识别app
- 八月 Z 星月度速览 | 杭州 Arch Meetup、源码解析两期接力,搭建方言翻译器,向量化 DNA 序列……...
- 埃航黑匣子逐步破解,坠机矛头直指全自动化飞行软件
- Hadoop(HA)
- Jenkins安装入门基础 零基础 如何在Linux下安装Jenkins CentOS安装Jenkins 阿里云安装 云服务器安装Jenkins
- Mstar的Monitor方案笔记(三)——点LVDS接口液晶屏
- 2022-2028年中国不良资产管理行业市场竞争策略及未来发展潜力报告
- 接收支付宝的POST异步通知(回调)