将SMILES转化为结构式的工具--SMILESDrawer介绍

本文介绍了如何利用开源的JavaScript库SMILESDrawer来基于SMILES字符串绘制和显示化学结构式,包括其简单易用的特点和一些示例分子结构。此外,还提到了其他几个功能强大的商业库,并提供了一个测试链接,方便读者直接在线体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载 

我们知道,要在网页中显示专业的图形, 数学公式可以使用MathJax库, 化学方程可以使用mhchem库,这两者都是Javascript代码写的程序库, 那么,如果想显示化学结构式,  是不是也有相应的Javascript库可用呢? 如果有这样的库,是不是就可以引入到Typora中让它支持化学结构显示呢?

出于这个目的, 我在网上搜索了一遍,发现这样的库还真有好些个. 如

1) JSME (这个很牛B, Sigma-Aldrich都在用它的库 https://peter-ertl.com/jsme/)

2) Kekule.js   ( https://github.com/partridgejiang/Kekule.js)   相关论文 中国药科大学 开发的

3) JSmol (JSmol download | SourceForge.net)、

4) ChemDoodle web Components (ChemDoodle Web Components | Installation > Download 讲解细致)

5)Marvin JS (https://chemaxon.com/products/marvin-js/download)、

6) JSDraw ( https://www.scilligence.com/web/download-jsdraw/)

等等, 后面这几种是商业版的,需要收费,但功能上很强大,可以显示化学结构, 也可以编辑化学结构.

我这里介绍的不是以上任何一种,而是一个名为SMILESDrawer的开源的Javascript库, 免费, 顾名思义,它的功能就是基于SMILES来绘制分子结构, 使用非常简单. 它放在GitHub上 GitHub - reymond-group/smilesDrawer: A small, highly performant JavaScript component for parsing and drawing SMILES strings. Released under the MIT license..

介绍它的论文(论文链接)2018年才发表。为了便于感兴趣的朋友尝试,我把它的JS库下载下来, 和相关的介绍资料放到了一个压缩包内,你可以将压缩包释放到某个目录下,双击里面的“结构式测试.HTML“文档用浏览器查看。

链接:百度网盘 请输入提取码  提取码:ztow

在Chrome浏览器中,加载"结构式测试.htm"之后, 在文本框输入SMILES字串, 就可以马上得到了结构图.  这一特点使得它非常适合用来学习和测试SMILES.

先看一下简单的分子VEC:

再来一个复杂一点的, 以前解析过的LiBOB, 是一个螺环结构的锂盐:

再复杂一点,  三(草酸根合)磷酸锂 LiTOP的SMILES和结构式,三个草酸根螯合到中心磷原子上,形成一个比较奇特的阴离子.

当分子结构中某个原子充当多个环的公共节点时,需要分别标记它, LiBOB中硼原子标记为12, 这里磷原子标记为123.  这种多次标记虽然写成123,也可以写成1\2\3, 用斜线分隔一下似乎更好看一点.

仔细观察下面, 页底还提供了不同设置以微调显示效果,如文本尺寸、键长度、键粗细、短键的长度(如双键中的短键)、双键的横线之间的距离(Bond spacing)以及图形的尺寸(size),你可以用鼠标拉动黑点调节一下看看效果。

最后, 这个结构式可以另存为png图片,但没有更多的选项了。

     有了这样的工具,即使手头没有专业的化学绘图软件,我们也可以绘制出比较专业的分子结构式来, 而且速度还不慢(当然,你得对SMILES够熟悉或者有这一串文本:心中有分子,屏幕才能帮你显示分子)

美中不足的是, SMILESDrawer生成的图形,没有办法人工干预图像中分子的位置, 有些细微的显示效果还不理想,比如上面VEC的图形不能旋转,LiTOP的锂离子显示在阴离子之后有重叠现象,但毕竟瑕不掩瑜。

最后,如果你想直接测试或使用这个工具, 不想安装到本地, 访问这个链接即可:



SmilesDrawer: parsing and drawing SMILES-encoded molecular structures using client-side JavaScript

 

 

 

### 如何在 macOS 上设置和运行 Windows 11 虚拟机 #### 所需工具与环境准备 为了实现在 macOS 平台上成功部署 Windows 11 的虚拟实例,需要提前准备好如下组件: - **Parallels Desktop 或 VMware Fusion**:这两款应用程序专为苹果设备设计,能够高效支持多种操作系统作为客户端的操作系统。对于希望获得更佳性能体验以及更好集成度的用户来说,推荐使用 Parallels Desktop[^1]。 - **Windows 11 ISO 镜像文件**:可以从微软官方网站获取正版授权的 Windows 11 安装介质。确保所选版本符合个人需求,并注意不同版本之间的功能差异[^2]。 #### 创建新的虚拟机向导 启动选定的应用程序之后,按照提示创建一个新的虚拟机项目,在此过程中会遇到关于选择要安装的操作系统的选项;此时应指定目标为 "Microsoft Windows" 类型下的具体分支——即 Windows 11 版本[^3]。 #### 系统资源分配调整 合理规划 CPU 数量、内存大小以及其他硬件参数至关重要。考虑到 Windows 11 对于计算机配置有一定要求,建议至少预留8GB以上的RAM空间给新建立起来的虚拟环境以保障流畅运作[^4]。 #### 启用安全特性兼容模式 由于某些情况下默认的安全策略可能会阻止非官方渠道来源的驱动加载等问题的发生,因此可能还需要额外开启如 Secure Boot 和 TPM (Trusted Platform Module) Emulation 这样的高级选项来满足 Windows 11 的特殊需求[^5]。 ```bash # 如果使用命令行方式修改VM设置,则可以参考下面的例子(适用于部分软件) vmrun modifyvm "Win11_VM_Name" -firmware efi \ -cpuid.coresPerSocket 2 \ -memsize 8192 \ -nestedHVEnabled yes \ -vhv.enable true ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值