matplotlib介绍
matplotlib
是一个强大的Python绘图库,用于创建高质量的静态、动态和交互式图表。它提供了广泛的绘图选项,适用于数据可视化、科学计算、工程绘图等多个领域。
主要特点:
- 丰富的图表类型:
matplotlib
支持各种常见的图表类型,包括折线图、散点图、柱状图、饼图、箱线图、等高线图等。这使得你可以根据不同需求选择最适合的图表类型来展示数据。 - 高度可定制性:
matplotlib
提供了丰富的配置选项,允许你自定义图表的各个方面,包括线条样式、颜色、坐标轴刻度、标签、标题等。你可以通过调整这些参数来使图表符合你的需求,并保证图表的美观与易读性。 - 支持多种输出格式:
matplotlib
可以将图表保存为多种格式,如图像文件(PNG、JPEG、SVG等)、PDF文档等。这方便了图表的保存和共享,使其可以在各种媒介上使用。 - 支持交互式图表:
matplotlib
可以与其他库(如NumPy、Pandas、Seaborn)以及IPython等交互式环境相结合,实现动态和交互式的数据可视化。这让你能够通过操作图表来探索和分析数据。
matplotlib安装
pip install matplotlib -i pypi.tuna.tsinghua.edu.cn/simple
import matplotlib
print(matplotlib.__version__) #3.8.0
绘图核心对象
对象 | 描述 |
---|---|
Figure(图形) | 包含了所有的绘图元素 |
Axes(坐标轴) | Figure对象可以包含一个或多个Axes对象。通过add_subplot()方法可以创建和添加多个Axes对象 |
Axis(坐标系) | 控制坐标轴的刻度、标签和范围等属性 |
Title(标题) | Figure对象可以有一个或多个标题 |
Legend(图例) | 显示图例,即解释图表中不同元素的标签和样式 |
Tick(刻度标签) | Tick对象代表坐标轴上的刻度线和刻度标签。 |
Axis Labels(轴标签) | 轴标签,xlable、ylable |
Annotation(注释) | 添加带有标签的注释 |
import matplotlib.pyplot as plt
# 创建 Figure 和 Axes 对象
fig, ax = plt.subplots()
# 绘制曲线
x = [1, 2, 3, 4, 5]
y = [10, 20, 30, 40, 50]
ax.plot(x, y, label='Line')
# 设置标题
ax.set_title('My Plot')
# 设置 x 轴和 y 轴标签
ax.set_xlabel('X-axis')
ax.set_ylabel('Y-axis')
# 设置刻度标签
ax.set_xticks([1, 2, 3, 4, 5]) # 设置 x 轴刻度位置
ax.set_xticklabels(['A', 'B', 'C', 'D', 'E']) # 设置 x 轴刻度标签
ax.set_yticks([0, 20, 40, 60]) # 设置 y 轴刻度位置
ax.set_yticklabels(['zero', 'twenty', 'forty', 'sixty']) # 设置 y 轴刻度标签
# 添加图例
ax.legend()
# 添加网格
ax.grid()
# 添加注释
ax.annotate('Max value', xy=(4, 40), xytext=(4, 30),
arrowprops=dict(arrowstyle='->'))
# 保存图形
plt.savefig('my_plot.png')
# 显示图形
plt.show()
绘制多个子图
创建一个包含多个子图(Axes
对象)的Figure
对象
fig, ax = plt.subplots(nrows