欢迎访问宙启技术站
智能推送

使用Draw()函数在Python中绘制树状图

发布时间:2023-12-24 03:24:14

在Python中,我们可以使用绘图库matplotlib的pyplot模块来绘制树状图。pyplot提供了许多函数来绘制各种类型的图表,包括树状图。

首先,我们需要导入matplotlib.pyplot模块:

import matplotlib.pyplot as plt

然后,我们可以使用plt.figure()函数创建一个新的绘图窗口,并使用plt.plot()函数在该窗口中绘制树状图。

树状图是一种层次结构的图表,有根节点、节点和边。我们可以使用plt.plot()函数来绘制树状图的节点和边。节点可以用圆圈或方框表示,边可以用直线或曲线表示。

下面是一个简单的例子,展示如何使用plt.plot()函数在绘图窗口中绘制一个简单的树状图:

import matplotlib.pyplot as plt

# 创建绘图窗口
plt.figure()

# 绘制根节点
plt.plot([0.5], [1], 'o', color='blue')

# 绘制      层子节点
plt.plot([0.3, 0.7], [0.8, 0.8], 'o', color='green')

# 绘制第二层子节点
plt.plot([0.25, 0.35], [0.6, 0.6], 'o', color='orange')
plt.plot([0.65, 0.75], [0.6, 0.6], 'o', color='orange')

# 绘制第三层子节点
plt.plot([0.22, 0.28], [0.4, 0.4], 'o', color='red')
plt.plot([0.32, 0.38], [0.4, 0.4], 'o', color='red')
plt.plot([0.62, 0.68], [0.4, 0.4], 'o', color='red')
plt.plot([0.72, 0.78], [0.4, 0.4], 'o', color='red')

# 绘制边
plt.plot([0.5, 0.3], [1, 0.8], '-', color='black')
plt.plot([0.5, 0.7], [1, 0.8], '-', color='black')
plt.plot([0.3, 0.25], [0.8, 0.6], '-', color='black')
plt.plot([0.3, 0.35], [0.8, 0.6], '-', color='black')
plt.plot([0.7, 0.65], [0.8, 0.6], '-', color='black')
plt.plot([0.7, 0.75], [0.8, 0.6], '-', color='black')
plt.plot([0.25, 0.22], [0.6, 0.4], '-', color='black')
plt.plot([0.25, 0.28], [0.6, 0.4], '-', color='black')
plt.plot([0.35, 0.32], [0.6, 0.4], '-', color='black')
plt.plot([0.35, 0.38], [0.6, 0.4], '-', color='black')
plt.plot([0.65, 0.62], [0.6, 0.4], '-', color='black')
plt.plot([0.65, 0.68], [0.6, 0.4], '-', color='black')
plt.plot([0.75, 0.72], [0.6, 0.4], '-', color='black')
plt.plot([0.75, 0.78], [0.6, 0.4], '-', color='black')

# 设置坐标范围
plt.xlim(0, 1)
plt.ylim(0, 1)

# 显示绘图窗口
plt.show()

在这个例子中,我们使用了一系列的plt.plot()函数来绘制树状图的节点和边。我们为每个节点指定了x和y坐标,并使用不同的颜色来区分不同的层次。节点之间的边通过将两个节点的坐标通过plt.plot()函数连接起来。

最后,我们使用plt.xlim()和plt.ylim()函数设置坐标范围,并使用plt.show()函数显示绘图窗口。

以上就是使用绘图库matplotlib的pyplot模块绘制树状图的方法。通过使用不同的坐标和颜色,我们可以绘制出不同结构和样式的树状图。