node_labels = {node: "C" + str(node) for node in nd_nodes},如何修改,使得node的序号出现在C的下角标处
时间: 2023-07-04 13:27:52 浏览: 34
你可以使用格式化字符串来实现这个需求。可以将字母C和节点编号分别作为两个变量,然后将它们结合在一起,放在一个格式化字符串中。具体实现如下:
```
node_labels = {node: "C{0}".format(node) for node in nd_nodes}
```
这样,你就可以将节点编号放在字母C的下角标处了。例如,如果节点编号为1,那么它对应的标签就是C₁。
相关问题
node_labels = {node: r"$\mathit{C}_{" + str(node + 1) + "}$" for node in nd_nodes} nx.draw_networkx_labels(self.aoi.graph, pos=pos, labels=node_labels, font_size=15),现在标记的位置和点重合了,如何修改程序使得标记改变位置,不再遮挡点的位置
可以通过调整 `pos` 参数来改变节点的位置,让标记的位置偏离节点。你可以尝试对节点的位置进行微调,例如将每个节点的位置向上或向下移动一些距离,以便标记的位置不会遮挡节点。
修改代码如下:
```
import matplotlib.pyplot as plt
import networkx as nx
# 设置字体为斜体
plt.rcParams['mathtext.fontset'] = 'stix'
plt.rcParams['font.family'] = 'STIXGeneral'
# 生成图形并布局
G = nx.Graph()
G.add_edges_from([(1,2), (2,3), (3,4), (4,1)])
pos = nx.circular_layout(G)
# 对节点位置进行微调
pos_new = {}
for node, (x, y) in pos.items():
pos_new[node] = (x, y+0.1)
# 设置节点标签
node_labels = {node: r"$\mathit{C}_{" + str(node+1) + "}$" for node in G.nodes}
# 绘制图形
nx.draw_networkx_nodes(G, pos=pos_new)
nx.draw_networkx_edges(G, pos=pos_new)
nx.draw_networkx_labels(G, pos=pos_new, labels=node_labels, font_size=15)
# 显示图形
plt.axis('off')
plt.show()
```
其中,`pos_new` 表示调整后的节点位置。我们将每个节点的 y 坐标向上移动了 0.1 的距离,以便标记的位置不会遮挡节点。
node_labels = {node: "${{c}}_{{' + str(node+1) + '}}$" for node in nd_nodes},错在哪里,为什么不能正确显示序号
这段代码中的字符串格式化语句有误,应该改为:
```
node_labels = {node: f"${{c}}_{{{node+1}}}}" for node in nd_nodes}
```
其中,`f""`表示使用 f-string 格式化字符串,`{}` 表示字符串内的变量,双重大括号 `{{}}` 表示转义后的单个大括号。这样可以正确显示节点的序号。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)