![Python数据可视化之matplotlib精进](https://wfqqreader-1252317822.image.myqcloud.com/cover/900/25449900/b_25449900.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.2 椭圆的实现方法
圆可以看作椭圆的一种特殊形式,因此,我们讨论一般的椭圆的绘制方法。绘制椭圆可以通过类Ellipse实现。下面,我们详细讲解类Ellipse的构造函数的使用方法。
1.代码实现
![](https://epubservercos.yuewen.com/39936E/13898203705421006/epubprivate/OEBPS/Images/27_1.jpg?sign=1738905244-y9AcHiHAd0e4QhLXFWSNa4xtRff6lPXu-0-ada5f69be90cb70f003a7628d7b9a558)
![](https://epubservercos.yuewen.com/39936E/13898203705421006/epubprivate/OEBPS/Images/28_1.jpg?sign=1738905244-bjl3nDGyA6l6mcsDIm2pFzzKoSWDhavD-0-ab3f82bd1c3cd9dc8bd768c88375f5dc)
2.运行结果(见图2-2)
![](https://epubservercos.yuewen.com/39936E/13898203705421006/epubprivate/OEBPS/Images/28_2.jpg?sign=1738905244-LaWddBAze27CjnmjvitCbZ6PfwJkNoHn-0-8859bd7f826f0e34345da0151597053f)
图2-2
3.代码精讲
(1)在子区1中,通过调用“np.linspace(0,135,4)”语句,获得旋转角度数组;通过调用“[Ellipse((2,2),4,2,a) for a in angles]”语句,获得逆时针旋转4个角度的椭圆实例列表,这是一个推导列表。
(2)通过for循环语句,将椭圆实例分别添加到子区1中的坐标轴实例ax[0]中。同时,使用实例方法set_alpha()和set_color()设置椭圆实例的透明度及填充颜色。
(3)为了使得可视化效果更理想,我们调整了坐标轴的显示范围。
(4)在子区2中,通过推导列表生成了椭圆中心位置、宽度、长度和旋转角度,都是随机设定的椭圆实例列表ellipse。
(5)通过for循环语句,调用实例方法add_patch()分别将推导列表ellipse中的实例元素添加到坐标轴实例 ax[1]中。同时,随机地设定椭圆实例的透明度和填充颜色,其中,填充颜色使用的是0~1闭区间的浮点数形式的RGB元组,即(R,G,B)颜色模式。