![Python数据可视化之matplotlib精进](https://wfqqreader-1252317822.image.myqcloud.com/cover/900/25449900/b_25449900.jpg)
2.3 矩形的实现方法
矩形是数据可视化中一种比较常见的几何图形。在具体实践中,我们通过类Rectangle生成矩形实例,将矩形实例添加到坐标轴中,从而完成矩形的绘制任务。这种多边形既可以充当坐标轴背景,也可以作为组合图形的一部分。下面,我们就将已经介绍过的相关内容和绘制矩形的实现方法结合起来,完成一幅简易图画的绘制任务。
1.代码实现
![](https://epubservercos.yuewen.com/39936E/13898203705421006/epubprivate/OEBPS/Images/29_1.jpg?sign=1738789093-6ZRSyHdvTqPw3XJ80l1V4rmuOcMzozR9-0-56cb2f902f19e980cdafd6fa78897d1e)
![](https://epubservercos.yuewen.com/39936E/13898203705421006/epubprivate/OEBPS/Images/30_1.jpg?sign=1738789093-Fl3ieCHoHSJnwsqwnzVjXOLfM9rwCTof-0-f920b266dd20905b1fe95b7d781af552)
2.运行结果(见图2-3)
![](https://epubservercos.yuewen.com/39936E/13898203705421006/epubprivate/OEBPS/Images/30_2.jpg?sign=1738789093-oEXhEEJiWhxmr6SnLbO0D58dAvxQaaiw-0-f25d1873222e8af7cbfa8c2eac37413c)
图2-3
3.代码精讲
(1)通过调用“ax.patch”语句,获得类Rectangle(xy=(0,0),width=1,height=1)的实例rectangle。
(2)通过调用“rectangle.set_facecolor("lightskyblue")”语句,设置坐标轴实例ax的背景色。
(3)通过调用“Rectangle((1,0),3,3,facecolor="w",edgecolor="rosybrown")”语句,绘制第一个矩形。这个矩形的左下角顶点的坐标是(1,0),矩形的宽度和高度都是 3,也是一个正方形。我们也设置了矩形内部的填充颜色和轮廓的线条颜色。其他两个矩形的绘制方法与第一个矩形的绘制方法完全相同,只是矩形的左下角顶点的位置和矩形的形状不同。
注意:
第二个矩形rectangle2还使用参数hatch增加了装饰图案“|”,使房子的门产生木质纹理的展示效果。
(4)使用“ax.plot([1,2.5,4],[3,4.5,3],color="rosybrown")”语句,设置屋顶的轮廓的线条颜色。
(5)通过实例方法plot()向第三个矩形中添加了窗户的窗框。
(6)通过调用实例方法fill_between()将屋顶的填充颜色设置为白色,与所有矩形内部的填充颜色一致。
这样,我们将绘制矩形的方法与前面讲过的相关方法相结合,相对完整地绘制了一个简易房屋。需要补充的是,我们看到,使用 matplotlib 不仅可以完成绘制统计图形的任务,还可以实现绘制图画的目标。