一图胜千言,使用Python的matplotlib库,可以快速创建高质量的图形。
我们团队推出一个新的系列教程:Python数据可视化,针对初级和中级用户,将理论和示例代码相结合,使用matplotlib, seaborn, plotly等工具实现可视化。
本文的主题是如何用Matplotlib创建子图。
Matplotlib有一个概念subplot:包含在Figure对象中的小型Axes对象。这允许我们在一幅图中创建很多个子图,方便对比数据。
创建子图的3种常用方法:
- fig.add_axes
- plt.subplots
- plt.GridSpec
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
plt.style.use("ggplot")
1. fig.add_axes
- 先调用plt.figure()创建Figure对象,图表是所有坐标的容器。
- 调用fig.add_axes()在图表的任意位置添加子图,该方法接收一个包含4个数字的列表: [ x , y , w i d t h , h e i g h t ] [x, y, width, height] [x,y,width,height],分别代表子图左下角的坐标(x,y),子图的宽度和高度,这四个数字的取值范围都是 [ 0 , 1 ] [0,1] [0,1],代表相对位置和大小。
- 最后调用ax.plot将数据映射到子图。
# 创建图表对象
fig = plt.figure(figsize=(10,</