用python分形图
时间: 2024-10-09 11:14:36 浏览: 33
在Python中创建分形图通常使用数学库如`numpy`和图像处理库如`matplotlib`,最著名的莫过于通过迭代算法绘制复杂的几何形状,例如著名的Koch曲线、Mandelbrot集合等。以下是使用Python简单创建一个基本的分形树(Sierpinski三角形)的例子:
```python
import matplotlib.pyplot as plt
from matplotlib.path import Path
import numpy as np
def sierpinski_triangle(points):
# 初始化新点列表
new_points = []
for p in points:
# 添加三个新点到新列表中,形成下一级Sierpinski三角形
new_points.extend([
(p[0] + 0.5 * p[2], p[1]),
(p[0] + p[2], p[1] + 0.5 * p[3]),
(p[0], p[1] + p[3])
])
return new_points
# 定义初始三角形的顶点
initial_triangle = [(0, 0), (1, 0), (0.5, 0.866)]
# 迭代生成分形图形
for _ in range(5): # 可以调整层数来改变复杂度
initial_triangle = sierpinski_triangle(initial_triangle)
# 使用matplotlib画出分形图形
fig, ax = plt.subplots()
ax.fill(*zip(*initial_triangle), 'black', alpha=0.5)
plt.axis('off')
plt.show()