python中怎么绘制柱状簇_python – 使用NetworkX将簇中的顶点分组

本文介绍如何利用NetworkX库在Python中绘制柱状簇,通过spring_layout方法将紧密结合的社区节点放在一起。文章展示了示例代码,包括如何自定义节点位置、固定部分节点位置以及设置边权重来保持节点群集。最后提到了使用matplotlib为每个簇绘制曲线的可能性。
摘要由CSDN通过智能技术生成

我不肯定你的问题是什么.我想你在问“如何让networkx将一些节点放在一起”

因此,您所询问的这个数字有4个不同的社区,这些社区基于每个社区内有很多边缘而在外部并不多.

如果你不想付出太多努力,spring_layout通常适合将紧密结合的社区放在一起. spring_layout的基本算法就像边缘是弹簧(和节点排斥)一样.因此,许多边缘使节点靠近在一起.请注意,它会随机初始化位置,因此每次您获得不同的输出.

最简单的方法就是这样做

nx.draw_spring(G)

但也许你想要更多.如果您愿意,可以修复每个节点的位置.定义一个dict,通常命名为pos.

pos = {}

for node in G.nodes_iter():

pos[node] = (xcoord, ycoord).

其中xcoord和ycoord是您希望节点所在的坐标.

然后就做

draw_networkx(G,pos = pos)

这通常需要付出很多努力.所以有时你只是说它们中的一些必须在特定的地方,让networkx做其余的事情

为几个节点定义fixedpos然后运行

spring_layout

告诉它什么节点被修复并给它fixedpos作为初始位置.然后它将固定那些固定并适合其他一切.

这里有一些代码生成一个网络,它有4个完全连接的部分和它们之间的一些其他边. (实际上它会生成一个完整的网络,然后删除这些部分之间的所有边缘).然后它用简单的弹簧布局绘制它.然后它将它们中的4个固定在正方形的角落,并将其他节点放在那些固定位置周围.

import networkx as nx

import random

import pylab as py

from math import floor

G = nx.complete

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值