“第10届量子化学波函数分析与Multiwfn程序培训班将于5月4-8日于北京举办,这是一次性完整、系统学习波函数分析的各种理论知识和全面掌握强大的Multiwfn波函数分析程序使用的最不可错过的机会!请点击此链接查看详情和报名方式,欢迎参加!

“第18届北京科音分子动力学与GROMACS培训班” 将于5月23-26日于北京举办。这是一次性全面、系统学习分子动力学模拟知识和最流行的分子动力学程序GROMACS的关键机会!报名正在进行中,请点击此链接查看详情,欢迎参加!

计算化学公社

 找回密码 Forget password
 注册 Register
Views: 652|回复 Reply: 15
打印 Print 上一主题 Last thread 下一主题 Next thread

[Python] XYZRender Web App — 分子图形工作站

[复制链接 Copy URL]

64

帖子

0

威望

538

eV
积分
602

Level 4 (黑子)

本帖最后由 方方方 于 2026-3-27 13:00 编辑

最近使用xyzrender绘图,感觉特别美观,于是乎
基于 xyzrender 库的 Web 渲染界面,支持将分子文件渲染为出版质量的 SVG、PNG、PDF 和 GIF。

目录结构
xyzrender_app/
├── app.py              # Flask 后端
├── requirements.txt    # Python 依赖
├── templates/
│   └── index.html      # 前端界面
├── MOLECULES/          # 放置分子文件(自动创建)
└── FIGURE/             # 渲染结果保存目录(自动创建)


安装

先下载好https://github.com/TiegenFang/xyzrender-webapp.git的code(可以帮忙点个star)
1. 安装
  1. pip install xyzrender
  2. # latest development version:
  3. pip install --upgrade git+https://github.com/aligfellow/xyzrender.git
复制代码


如果需要全部功能,可以安装如下:
  1. pip install xyzrender[crystal]  # VASP/QE periodic structures (phonopy)
  2. pip install xyzrender[smi]      # SMILES input (rdkit)
  3. pip install xyzrender[cif]      # CIF input (ase)
  4. pip install xyzrender[all]      # everything above
复制代码


2. 启动应用
python app.py

浏览器访问:http://localhost:5000

使用方法
步骤 1 — 准备分子文件
将分子文件放入 MOLECULES/ 文件夹,或直接在网页界面中拖拽上传。
支持的文件格式:
[td]
格式说明
.xyzXYZ 坐标文件
.mol / .sdfMOL/SDF 格式
.mol2MOL2 格式
.pdb蛋白质数据库格式
.out / .logORCA、Gaussian 等 QM 输出文件
.gjf / .gjcGaussian 输入文件
.fchkGaussian formatted checkpoint
.cube电子密度 / 分子轨道 cube 文件
.cif晶体结构文件(需要 xyzrender[crystal])
.smilesSMILES 字符串文件(需要 xyzrender[smiles])
步骤 2 — 选择渲染选项
  • 输出格式:SVG(默认)、PNG、PDF、GIF(旋转动画)
  • 绘图风格:
    • default — 标准 CPK 风格,带深度雾化
    • flat — 扁平化无阴影风格
    • paton — PyMOL 风格(球棍模型)
    • skeletal — 骨架式(有机化学惯例)
    • bubble — 大球风格
    • tube — 管状键
    • wire — 线框风格
  • 渲染选项:
    • 显示氢原子(--hy)
    • 过渡态键(--ts)
    • 非共价相互作用(--nci)
  • GIF 动画:旋转轴 x / y / z / xy
  • 高级选项(量子化学):
    • 电子密度等值面(--dens,需要 cube 文件)
    • 分子轨道(--mo,需要 MO cube 文件)
    • ESP 映射(需要两个 cube 文件)
    • 自定义 JSON 配置覆盖

步骤 3 — 渲染 & 查看
点击 ▶ 渲染分子 后,结果将:
  • 自动保存到 FIGURE/ 文件夹
  • 在右侧预览区实时显示
  • 支持全屏查看和下载

特色
[color=rgba(0, 0, 0, 0.9)]🌗 亮暗模式+字体自由调熬夜画图的同学有福了!暗色界面护眼,字体大小随心调,截图直接丢进论文不用二次修图
[color=rgba(0, 0, 0, 0.9)]🎨 渲染全面升级vdw球体显示、DOF景深效果、晶胞框线、分子重取向...以前要开三个软件的操作,现在一个网页全搞定。风格选择多到选择困难症发作
[color=rgba(0, 0, 0, 0.9)]🖱️ 视角自由旋转终于不用猜哪个角度好看了!鼠标一拖直接找最佳视角,出图速度翻倍,赶deadline神器
[color=rgba(0, 0, 0, 0.9)]📁 TEMP/FIGURE规范导出强迫症狂喜!文件命名整整齐齐,放supporting information里导师都挑不出毛病

相关链接


亮色界面.png (178.45 KB, 下载次数 Times of downloads: 2)

亮色界面.png

暗色界面.png (181.18 KB, 下载次数 Times of downloads: 0)

暗色界面.png

实时调整.png (79.2 KB, 下载次数 Times of downloads: 0)

实时调整.png

esp.png (369.33 KB, 下载次数 Times of downloads: 0)

esp.png

ethanol_rotated_pmol_hy.png (360.43 KB, 下载次数 Times of downloads: 1)

ethanol_rotated_pmol_hy.png

ethanol_rotated_graph_hy_vdw.png (320.8 KB, 下载次数 Times of downloads: 0)

ethanol_rotated_graph_hy_vdw.png

ethanol_rotated_default_hy.png (239.78 KB, 下载次数 Times of downloads: 1)

ethanol_rotated_default_hy.png

评分 Rate

参与人数
Participants 9
eV +40 收起 理由
Reason
yzh + 5 好物!
JunranThsu + 5 好物!
jeham + 2 精品内容
SharkYYX2025 + 3 好物!
njust-lbc + 5 GJ!
zsu007 + 5 谢谢分享
ChrisZheng + 5 谢谢
student0618 + 5
wal + 5

查看全部评分 View all ratings

262

帖子

7

威望

2185

eV
积分
2587

Level 5 (御坂)

2#
发表于 Post on 2026-3-28 17:56:24 | 只看该作者 Only view this author
这个项目我很早就关注了,实际上对于大分子(100 原子以上),效果还是欠缺,拿公司实际开发分子看,对于单双键,离域的判断以及空间的位置的判断还是有些问题。

202603281754076974..png (371.23 KB, 下载次数 Times of downloads: 0)

202603281754076974..png

64

帖子

0

威望

538

eV
积分
602

Level 4 (黑子)

3#
 楼主 Author| 发表于 Post on 2026-3-29 18:17:12 | 只看该作者 Only view this author
wxyhgk 发表于 2026-3-28 17:56
这个项目我很早就关注了,实际上对于大分子(100 原子以上),效果还是欠缺,拿公司实际开发分子看,对于单 ...

感谢指出,因为这个项目还是基于的xyzrender做的可视化工作~

358

帖子

2

威望

4730

eV
积分
5128

Level 6 (一方通行)

4#
发表于 Post on 2026-3-30 11:38:40 | 只看该作者 Only view this author
有没有3d可编辑 好用的 web editor?

3

帖子

0

威望

63

eV
积分
66

Level 2 能力者

5#
发表于 Post on 2026-4-3 12:08:57 | 只看该作者 Only view this author
请教一下怎么断开特定的键?在app内没找到合适的选项

64

帖子

0

威望

538

eV
积分
602

Level 4 (黑子)

6#
 楼主 Author| 发表于 Post on 2026-4-3 16:25:33 | 只看该作者 Only view this author
jeham 发表于 2026-4-3 12:08
请教一下怎么断开特定的键?在app内没找到合适的选项

xyzrender本身好像并不支持这个功能

3

帖子

0

威望

63

eV
积分
66

Level 2 能力者

7#
发表于 Post on 2026-4-4 10:38:11 | 只看该作者 Only view this author
方方方 发表于 2026-4-3 16:25
xyzrender本身好像并不支持这个功能

https://xyzrender.readthedocs.io ... RenderConfig.unbond,这个好像是。感觉xyzrender对成键的判断和gaussview有些区别

64

帖子

0

威望

538

eV
积分
602

Level 4 (黑子)

8#
 楼主 Author| 发表于 Post on 2026-4-6 13:37:43 | 只看该作者 Only view this author
jeham 发表于 2026-4-4 10:38
https://xyzrender.readthedocs.io/en/latest/api/types.html#xyzrender.types.RenderConfig.unbond,这 ...

hhh太感谢指出并提供参考~

3

帖子

0

威望

63

eV
积分
66

Level 2 能力者

9#
发表于 Post on 2026-4-6 19:11:20 | 只看该作者 Only view this author
方方方 发表于 2026-4-6 13:37
hhh太感谢指出并提供参考~

非常期待功能的更新!也非常感谢楼主对社区的贡献!!!

271

帖子

0

威望

584

eV
积分
855

Level 4 (黑子)

10#
发表于 Post on 6 day ago | 只看该作者 Only view this author
wxyhgk 发表于 2026-3-28 17:56
这个项目我很早就关注了,实际上对于大分子(100 原子以上),效果还是欠缺,拿公司实际开发分子看,对于单 ...

哥们研究MR-TADF绿光,不知道是哪个课题组的

271

帖子

0

威望

584

eV
积分
855

Level 4 (黑子)

11#
发表于 Post on 6 day ago | 只看该作者 Only view this author
github加星成功,感谢楼主贡献

271

帖子

0

威望

584

eV
积分
855

Level 4 (黑子)

12#
发表于 Post on 5 day ago | 只看该作者 Only view this author
请教一下老师,rockylinux8.10 python3.6.8下:
[root@Master xyzrender-webapp-main]# pip install xyzrender
ERROR: Could not find a version that satisfies the requirement xyzrender (from versions: none)
ERROR: No matching distribution found for xyzrender
提示找不到xyzrender包?请问是什么原因,我将最新的xyzrender-webapp-main已经下载解压好了
谢谢!

1.png (28.28 KB, 下载次数 Times of downloads: 1)

1

1

794

帖子

15

威望

3389

eV
积分
4483

Level 6 (一方通行)

鸩羽

13#
发表于 Post on 5 day ago | 只看该作者 Only view this author
本帖最后由 wal 于 2026-4-10 10:37 编辑
yzh 发表于 2026-4-10 10:30
请教一下老师,rockylinux8.10 python3.6.8下:
[root@Master xyzrender-webapp-main]# pip install xyzre ...

看错了 没事了XD
你看看是不是Python版本太低
某不知名实验组从苞米地里长出来的计算选手

64

帖子

0

威望

538

eV
积分
602

Level 4 (黑子)

14#
 楼主 Author| 发表于 Post on 5 day ago | 只看该作者 Only view this author
yzh 发表于 2026-4-10 10:30
请教一下老师,rockylinux8.10 python3.6.8下:
[root@Master xyzrender-webapp-main]# pip install xyzre ...

感觉是python版本很低,xyzrender里面推荐我记得是3.10以上
然后如果你是用服务器运行这个,自己电脑还得ssh到映射到的端口了
所以我个人建议直接在自己电脑上面运行

271

帖子

0

威望

584

eV
积分
855

Level 4 (黑子)

15#
发表于 Post on 5 day ago | 只看该作者 Only view this author
本帖最后由 yzh 于 2026-4-10 11:10 编辑
方方方 发表于 2026-4-10 10:59
感觉是python版本很低,xyzrender里面推荐我记得是3.10以上
然后如果你是用服务器运行这个,自己电脑还 ...

好的,非常感谢。我在windows上尝试可以的python3.12.3,linux系统应该python版本较低的原因,rockylinux8.10自带的是3.6.8版本。谢谢

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2026-4-15 03:11 , Processed in 0.211461 second(s), 24 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list