Questions tagged «networkx»

6
如何在python中使用networkx绘制有向图?
我有一些来自脚本的节点,希望将其映射到图上。在下面,我想使用“箭头”从A到D,并可能将边缘也涂成红色(红色或其他颜色)。 基本上,这就像所有其他节点都存在时从A到D的路径一样。您可以想象每个节点都是城市,并且从A到D的行驶需要方向(带有箭头)。 下面的代码构建图表 import networkx as nx import numpy as np import matplotlib.pyplot as plt G = nx.Graph() G.add_edges_from( [('A', 'B'), ('A', 'C'), ('D', 'B'), ('E', 'C'), ('E', 'F'), ('B', 'H'), ('B', 'G'), ('B', 'F'), ('C', 'G')]) val_map = {'A': 1.0, 'D': 0.5714285714285714, 'H': 0.0} values = [val_map.get(node, 0.25) for …

3
有没有办法保证NetworkX的分层输出?
我正在尝试生成树形结构的流程图。我已经可以使用networkx创建代表性的图形,但是我需要一种在输出绘图时显示树形结构的方法。我正在使用matplotlib.pylab绘制图形。 我需要以类似于此处所示的结构来显示数据。虽然我没有子图。 如何保证这样的结构? 非信徒的例子: 我已经可以使用pylab和graphviz来显示图,但是都没有提供我要寻找的树结构。我已经尝试过networkx必须提供的所有布局,但是没有一个显示层次结构。我只是不确定要给它什么选项/方式,或者如果我需要使用权重。任何建议将帮助一堆。 @jterrace: 这是我用来制作上述图的大致轮廓。我添加了一些标签,但除此之外,它是相同的。 import networkx as nx import matplotlib.pyplot as plt G = nx.Graph() G.add_node("ROOT") for i in xrange(5): G.add_node("Child_%i" % i) G.add_node("Grandchild_%i" % i) G.add_node("Greatgrandchild_%i" % i) G.add_edge("ROOT", "Child_%i" % i) G.add_edge("Child_%i" % i, "Grandchild_%i" % i) G.add_edge("Grandchild_%i" % i, "Greatgrandchild_%i" % i) plt.title("draw_networkx") nx.draw_networkx(G) …
84 python  networkx 

4
在街道数据中查找街区(斜线)(图形)
我正在寻找一种自动在城市中将邻域定义为图形上的多边形的方法。 我对邻居的定义包括两个部分: 街区:在多条街道之间封闭的区域,其中街道(边)和交叉点(节点)的数量最少为3(三角形)。 邻域:对于任何给定的块,所有与该块直接相邻的块以及该块本身。 有关示例,请参见下图: 例如,B4是由7个节点和6个连接它们的边定义的块。如此处大多数示例所示,其他块由4个节点和4个连接它们的边定义。此外,附近的B1包括B2(反之亦然),而B2还包括B3。 我正在使用osmnx从OSM获取街道数据。 使用osmnx和networkx,如何遍历图形以查找定义每个块的节点和边? 对于每个块,我如何找到相邻的块? 我正在朝着一段代码工作,该代码采用一个图形和一对坐标(纬度,经度)作为输入,标识相关的块并返回该块的多边形以及如上定义的邻域。 这是用于制作地图的代码: import osmnx as ox import networkx as nx import matplotlib.pyplot as plt G = ox.graph_from_address('Nørrebrogade 20, Copenhagen Municipality', network_type='all', distance=500) 和我尝试寻找节点和度数不同的派系。 def plot_cliques(graph, number_of_nodes, degree): ug = ox.save_load.get_undirected(graph) cliques = nx.find_cliques(ug) cliques_nodes = [clq for clq in cliques if …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.