设置画布

在 Matplotlib 中,画布(Figure)是用来容纳绘图元素的顶层容器。它可以看作是一个空白的画布或纸张,你可以在上面绘制各种图表、图形和子图。

画布的使用逻辑如下:

  1. 创建画布:首先,你需要创建一个画布对象。可以使用 plt.figure() 函数来创建一个新的画布。例如:

    import matplotlib.pyplot as plt
     
    fig = plt.figure()

    这将创建一个空白的画布对象 fig

  2. 添加子图:在画布上添加子图(Axes)来实际进行绘图。子图是指图表的实际绘图区域,你可以在子图上绘制线条、散点图、柱状图等。可以使用 fig.add_subplot() 方法来添加子图。例如:

    ax = fig.add_subplot(1, 1, 1)

    这将在画布上添加一个子图对象 ax,并指定其在画布上的位置。

  3. 绘制图形:在子图上使用 Matplotlib 提供的绘图函数来创建图形。例如,使用 ax.plot() 函数绘制折线图:

    x = [1, 2, 3, 4, 5]
    y = [2, 4, 6, 8, 10]
    ax.plot(x, y)

    这将在子图上绘制一条连接给定数据点的折线。

  4. 自定义和装饰:你可以根据需要对画布、子图和图形进行自定义和装饰。例如,可以设置坐标轴标签、标题、图例等。一些常用的方法包括 ax.set_xlabel()ax.set_ylabel()ax.set_title() 等。

  5. 显示图像:当你完成绘图后,可以使用 plt.show() 函数显示图像。这将打开一个窗口,并在其中显示你绘制的图形。

总结起来,使用 Matplotlib 绘制图形的一般流程是:创建画布 添加子图 绘制图形 自定义和装饰 显示图像。

需要注意的是,Matplotlib 还提供了其他功能和绘图工具,例如子图网格、多个子图的管理、保存图像等。

杂项

  • 设置字体:mpl.rcParams['font.family] = ['Heiti SC']
# 一次性设置多个属性
rc= {"font.familyT": "Times New Roman", "mathtext.fontset": "stix"}
mpl.rcParams.update(rc)
# 查询当前系统所有字体  
from matplotlib.font_manager import FontManager  
import subprocess  
  
mpl_fonts = set(f.name for f in FontManager().ttflist)  
  
print('all font list get from matplotlib.font_manager:')  
for f in sorted(mpl_fonts):  
    print('\t' + f)