如何使用标签在地图上显示networkx图形?

时间:2018-05-08 17:26:10

标签: python matplotlib graph leaflet networkx

我正在关注此答案Python: Graph using NetworkX and mplleaflet,但无法对其进行修改以显示节点标签。这是我正在使用的代码。

import matplotlib.pyplot as plt
import mplleaflet
import networkx as nx

small_graph = nx.Graph()
small_graph.add_node('1')
small_graph.add_node('2')
small_graph.add_node('3')
small_graph.add_node('4')
small_graph.add_edge('1', '2')
small_graph.add_edge('3', '2')
small_graph.add_edge('3', '4')


pos = {'1': [55, 10], '2': [56, 11], '3': [57, 12], '4': [58, 12]}
labels = {'1': 'Node 1', '2': 'Node 2', '3': 'Node 3', '4': 'Node 4'}


fig, ax = plt.subplots()

nx.draw_networkx_nodes(small_graph,pos=pos,node_size=40,node_color='red',edge_color='k',alpha=.5)
nx.draw_networkx_edges(small_graph,pos=pos,edge_color='gray', alpha=.4)
nx.draw_networkx_labels(small_graph,pos=pos, labels=labels, font_size=10)


plt.show()
# mplleaflet.display(fig=fig)

如果我使用标准plt.show(),我可以看到标签正确显示graph visualization using plt.show()。但是,如果我取消注释最后一行以在地图上显示此图形,我只会得到graph visualization using mplleaflet.display()这绝对不是字体大小的问题,因为调整此值并没有任何区别。这有可能实现这一目标吗?如果没有,你推荐什么替代品?

0 个答案:

没有答案