【版权声明】
本文首发于大水牛平台
非常感谢CPF投稿大水牛平台发表
如需转载请联系作者
本次介绍的是python语言编写的软件包——Networkx,便于用户对复杂网络进行创建。为什么要使用它:我们不用再纠结于算法是如何实现的,我们只需要简单的使用它,就可以达到想要的效果。而我们这次将只是初探,毕竟能力有限,欢迎交流。
先展示代码,是不是很简单。当然关于路网我们不仅局限于此。。
关于图论,借用维基百科的定义“图论中的图是由若干给定的顶点及连接两顶点的边所构成的图形,这种图形通常用来描述某些事物之间的某种特定关系,用顶点代表事物,用连接两顶点的边表示相应两个事物间具有这种关系。”
图论中的一些基本概念。图(graph)G=(V,E)由顶点(vertex)的集V和边(Edge)的集E组成。我们可以给边和点赋予各种的属性,比如权值。比如在最短路径中,我们赋予边的权重即距离。权值可以表示从一个顶点到另一个顶点的距离,也可以表示一个顶点到另一个顶点花费的代价(比如时间、金钱等)。一个边上带权值的图称为网络(network)。
下面结合代码,具体解释nextworkx是如何使用的。