python画图五角星
时间: 2024-05-13 08:12:54 浏览: 134
在 Python 中,我们可以使用 matplotlib 库中的画图函数来绘制五角星。以下是一个示例代码:
```
import matplotlib.pyplot as plt
import numpy as np
def draw_star(center, size):
"""绘制五角星"""
R = size / 2.0
r = R * np.sin(np.pi / 5) / np.sin(3 * np.pi / 10)
angles = np.linspace(0, 2 * np.pi, 6)[:-1]
vertices = [(R * np.cos(angle), R * np.sin(angle)) for angle in angles]
vertices += [(r * np.cos(angle + np.pi / 5), r * np.sin(angle + np.pi / 5)) for angle in angles]
codes = [plt.Path.MOVETO] + [plt.Path.LINETO] * 9 + [plt.Path.CLOSEPOLY]
path = plt.Path(vertices + [center], codes)
return path
# 绘制五角星
fig, ax = plt.subplots()
star = draw_star((0, 0), 1)
patch = plt.PathPatch(star, facecolor='gold', edgecolor='black')
ax.add_patch(patch)
plt.axis('equal')
plt.show()
```
以上代码中,`draw_star()` 函数用来绘制五角星,其中 `center` 表示五角星的中心点,`size` 表示五角星的大小。最后使用 `plt.PathPatch()` 函数将五角星转换为绘图对象,并添加到当前的 Axes 对象中进行绘制。
阅读全文