关于Networkx画图二

import networkx as nx 
import matplotlib.pyplot as plt
输入:
 G=nx.Graph([(1,2),(1,3),(2,3),(3,4),(4,5),(4,6),(4,7),(5,6),(5,7),(6,7),(6,11),(7,8),(8,9),(8,10),(9,10),(9,12)])

求:画出所有的节点和边,而且节点要有label
答:  
      nx.draw_networkx(G)
      plt.show()
得: 
     图片
求:每个完全子图的颜色都不一样
 答:
     
G=nx.Graph([(1,2),(1,3),(2,3),(3,4),(4,5),(4,6),(4,7),(5,6),(5,7),(6,7),(6,11),(7,8),(8,9),(8,10),(9,10),(9,12)])
      #colors = [1,1,1,2,2,2,2,3,3,3,4,5]     #用数组来区分颜色,产生的颜色是随机的
    colors = ['r','r','r','b','b','b','b','y','y','y','w','g']   #给定每个节点的颜色
      #pos=nx.spring_layout(G)这句给定了节点的布局为spring型,
      #
- circular_layout:节点在一个圆环上均匀分布  
     #- random_layout:节点随机分布 
     #- shell_layout:节点在同心圆上分布 
     #- spring_layout: 用Fruchterman-Reingold算法排列节点(这个算法我不了解,样子类似多中心放射状) 
      nx.draw_networkx(G,pos=nx.spring_layout(G),node_color=colors)  
得:图片

注:另外还有一种画法是先画节点,再画边,有兴趣可以探究实验
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值