python 画矩形树图
时间: 2024-04-14 21:24:41 浏览: 196
python 实现画矩形
5星 · 资源好评率100%
Python中可以使用matplotlib库来画矩形树图。下面是一个简单的示例代码:
```python
import matplotlib.pyplot as plt
# 定义树节点的类
class TreeNode:
def __init__(self, name):
self.name = name
self.children = []
def add_child(self, child):
self.children.append(child)
# 递归绘制矩形树图
def draw_tree(node, x, y, width, height):
plt.gca().add_patch(plt.Rectangle((x, y), width, height, edgecolor='black', facecolor='white'))
plt.text(x + width/2, y + height/2, node.name, ha='center', va='center')
if len(node.children) > 0:
child_width = width / len(node.children)
child_height = height / len(node.children)
child_x = x
for child in node.children:
draw_tree(child, child_x, y - child_height, child_width, child_height)
child_x += child_width
# 创建树节点
root = TreeNode("Root")
node1 = TreeNode("Node 1")
node2 = TreeNode("Node 2")
node3 = TreeNode("Node 3")
node4 = TreeNode("Node 4")
# 构建树结构
root.add_child(node1)
root.add_child(node2)
node2.add_child(node3)
node2.add_child(node4)
# 绘制矩形树图
plt.figure(figsize=(8, 6))
draw_tree(root, 0, 0, 10, 6)
plt.axis('off')
plt.show()
```
这段代码使用matplotlib库绘制了一个简单的矩形树图。你可以根据自己的需求修改节点的名称、位置和大小等参数来绘制不同的矩形树图。
阅读全文