1

这是我想使用 xyz2graph 可视化的 .xyz 文件:

18
Atoms. File created from networkx graph by get_decomposition_calc_SRO1.py_edited_by_hand
Ga 0.0 0.0 0.0
In 1.59 0.917986928012 2.583
In 0.0 0.0 5.166
Ga 1.59 0.917986928012 7.749
Ga 0.0 0.0 10.332
Ga 1.59 0.917986928012 12.915
Ga 1.59 2.75396078403 0.0
In 3.18 3.67194771205 2.583
Ga 1.59 2.75396078403 5.166
In 3.18 3.67194771205 7.749
Ga 1.59 2.75396078403 10.332
Ga 3.18 3.67194771205 12.915
Ga 3.18 5.50792156807 0.0
In 4.77 6.42590849608 2.583
In 3.18 5.50792156807 5.166
Ga 4.77 6.42590849608 7.749

这是输出的静止图像:注意所有节点(标记为 In 和 Ga 的颜色相同)。 InGaN 片段

用于生成此图像的代码直接从该网站复制:

此处显示的确切代码段:

from xyz2graph import MolGraph, to_networkx_graph, to_plotly_figure
from plotly.offline import offline

# Create the MolGraph object
mg = MolGraph()

# Read the data from the .xyz file
mg.read_xyz('path/molecule.xyz')

# Create the Plotly figure object
fig = to_plotly_figure(mg)

# Plot the figure
offline.plot(fig)

如何改变化学结构中每个原子的颜色?

4

2 回答 2

1

解决方案

打开包并编辑cpk_colors字典helpers.py以包含原子种类的颜色

为什么?

问题是没有与 Indium 和 Gallium 原子相关的默认颜色helpers.py

如果我们检查源代码,则有两个关键文件:xyz2graph.pyhelpers.py

xyz2graph.py 包含有问题的两个原子的共价半径,但 helpers.py 在字典中没有关联的颜色cpk_colors

于 2020-06-08T17:04:11.910 回答
1

正如您正确指出的那样,没有关联颜色的元素默认为粉红色。您可以导入cpk_colors字典并覆盖可用颜色或为“粉红色”元素设置颜色。例如:

from xyz2graph.helpers import cpk_colors

cpk_colors['Ga'] = 'green'

结果:

在此处输入图像描述

于 2020-07-30T22:20:10.897 回答