上一节代码最后部分可以打印出来较为粗糙的二叉树结构:


应用pygraphviz库,可以生成二叉树图,由于还不是很熟悉用法,这里是手动设置节点:pygraphviz的安装过程可参见:pygraphviz安装教程


import pygraphviz as pgv  
  
G = pgv.AGraph(strict=False, directed=True)  
  
G.add_node('331')   
G.add_edge('331','320')
G.add_edge('331','220')  
G.add_edge('331','310')
G.add_edge('320','no way')
G.add_edge('220','321')
G.add_edge('310','321')
G.add_edge('321','300')
G.add_edge('300','110')
G.add_edge('110','221')
G.add_edge('221','020')
G.add_edge('020','031')
G.add_edge('031','010')
G.add_edge('010','021')
G.add_edge('010','111')
G.add_edge('021','000')
G.add_edge('111','000')
G.graph_attr['label'] = u'M_C states'  
G.node_attr['shape'] = 'circle'  
G.edge_attr['color'] = 'blue'    
s = G.to_string()     
G.layout(prog='dot')  
G.draw('first.png')

 运行上面代码生成如下图片: 

 

 


Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐