简介
本实验演示如何使用Python Matplotlib绘制椭圆。本实验涵盖两个示例:
- 绘制单个椭圆
- 绘制不同角度的椭圆
你可以在WebIDE中打开
ellipse-demo.ipynb
开始练习。了解如何在VS Code中使用Jupyter Notebook。
由于Labby无法访问笔记本,因此无法自动验证答案。
This tutorial is from open-source community. Access the source code
💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版
本实验演示如何使用Python Matplotlib绘制椭圆。本实验涵盖两个示例:
你可以在WebIDE中打开
ellipse-demo.ipynb
开始练习。了解如何在VS Code中使用Jupyter Notebook。
由于Labby无法访问笔记本,因此无法自动验证答案。
首先,我们需要导入所需的库。我们将使用numpy
生成随机数据,并使用matplotlib.pyplot
和matplotlib.patches
绘制椭圆。
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.patches import Ellipse
在这个示例中,我们将绘制许多具有随机大小、位置和颜色的椭圆。每个椭圆都将是Ellipse
类的一个实例。
## 固定随机状态以确保可重复性
np.random.seed(19680801)
## 要绘制的椭圆数量
NUM = 250
## 生成椭圆
ells = [Ellipse(xy=np.random.rand(2) * 10,
width=np.random.rand(), height=np.random.rand(),
angle=np.random.rand() * 360)
for i in range(NUM)]
## 创建绘图并将纵横比设置为'equal'
fig, ax = plt.subplots(subplot_kw={'aspect': 'equal'})
## 将每个椭圆添加到绘图中
for e in ells:
ax.add_artist(e)
e.set_clip_box(ax.bbox)
e.set_alpha(np.random.rand())
e.set_facecolor(np.random.rand(3))
## 设置绘图的x和y轴范围
ax.set_xlim(0, 10)
ax.set_ylim(0, 10)
## 显示绘图
plt.show()
在这个示例中,我们将绘制许多具有不同角度的椭圆。我们将使用一个循环为每个想要绘制的角度创建一个Ellipse
实例。
## 定义角度步长和要绘制的角度范围
angle_step = 45 ## 度
angles = np.arange(0, 180, angle_step)
## 创建绘图并将纵横比设置为'equal'
fig, ax = plt.subplots(subplot_kw={'aspect': 'equal'})
## 遍历角度并为每个角度绘制一个椭圆
for angle in angles:
ellipse = Ellipse((0, 0), 4, 2, angle=angle, alpha=0.1)
ax.add_artist(ellipse)
## 设置绘图的x和y轴范围
ax.set_xlim(-2.2, 2.2)
ax.set_ylim(-2.2, 2.2)
## 显示绘图
plt.show()
在本实验中,我们学习了如何使用Python Matplotlib绘制椭圆。我们涵盖了两个示例:绘制单个椭圆和绘制不同角度的椭圆。通过遵循本实验中的步骤,你应该能够在自己的Python项目中使用Matplotlib绘制椭圆。