授课语音

Matplotlib 基本函数

Matplotlib 提供了丰富的函数来创建各种类型的图表、定制图表样式以及对数据进行可视化。下面介绍一些 Matplotlib 中常用的基本函数,帮助你掌握如何使用它们来绘制和定制图形。

1. 绘制基本图表

  • plot():绘制线图

    • 用于绘制简单的二维线图。
    import matplotlib.pyplot as plt
    
    x = [1, 2, 3, 4, 5]
    y = [2, 4, 6, 8, 10]
    
    plt.plot(x, y)
    plt.show()
    
  • scatter():绘制散点图

    • 用于绘制每个数据点的散点图。
    plt.scatter(x, y)
    plt.show()
    
  • bar():绘制柱状图

    • 用于绘制柱状图(条形图),适合表示类别与数值的关系。
    plt.bar(x, y)
    plt.show()
    
  • hist():绘制直方图

    • 用于绘制数据的频率分布。
    data = [1, 2, 3, 4, 5, 6, 7, 8, 8, 9, 10]
    plt.hist(data, bins=5)  # bins 指定数据分组数
    plt.show()
    
  • pie():绘制饼图

    • 用于展示各个部分占整体的比例。
    labels = ['A', 'B', 'C', 'D']
    sizes = [20, 30, 40, 10]
    plt.pie(sizes, labels=labels, autopct='%1.1f%%')
    plt.show()
    

2. 设置图表的标题和标签

  • title():设置图表标题

    • 用于为图表设置标题。
    plt.title("This is a title")
    
  • xlabel()ylabel():设置 X 和 Y 轴标签

    • 用于设置坐标轴的标签。
    plt.xlabel("X Axis Label")
    plt.ylabel("Y Axis Label")
    
  • xticks()yticks():设置 X 和 Y 轴刻度

    • 用于调整刻度和显示的标签。
    plt.xticks([1, 2, 3, 4, 5], ['A', 'B', 'C', 'D', 'E'])
    

3. 定制图表的样式

  • line style(线条样式):通过 linestyle 参数设置线条样式

    • 'solid':实线,默认值
    • 'dashed':虚线
    • 'dotted':点线
    plt.plot(x, y, linestyle='--')  # 虚线
    
  • color(颜色):指定线条、标记和背景的颜色

    • 可用颜色名称(如 'red''green')、十六进制颜色代码(如 '#FF5733')或者 RGB 形式指定。
    plt.plot(x, y, color='green')  # 绿色线条
    
  • marker:设置标记的样式

    • 如:'o'(圆圈)、'x'(叉号)、'^'(三角形)、's'(正方形)。
    plt.plot(x, y, marker='o', markersize=5)  # 用圆圈标记每个数据点
    
  • linewidth:设置线条宽度

    plt.plot(x, y, linewidth=2)  # 设置线条宽度为 2
    

4. 显示图例

  • legend():显示图例
    • 用于图表中标识每条线或每种数据的含义。可以通过 label 参数为每条线指定名称,图例会显示这些名称。
    plt.plot(x, y, label="Line 1")
    plt.legend()
    

5. 保存图表

  • savefig():保存图表到文件
    • 可以将图表保存为图片文件,支持 PNG、PDF、SVG 等格式。
    plt.plot(x, y)
    plt.savefig('my_plot.png')  # 保存为 PNG 格式
    

6. 设置坐标轴范围

  • xlim()ylim():设置 X 轴和 Y 轴的显示范围

    plt.xlim(0, 6)  # X轴显示范围
    plt.ylim(0, 12)  # Y轴显示范围
    

7. 创建子图

  • subplot():创建多个子图
    • 通过指定行数、列数和子图的位置来创建多个子图。
    plt.subplot(2, 1, 1)  # 创建一个 2x1 的子图,并激活第一个子图
    plt.plot(x, y)
    
    plt.subplot(2, 1, 2)  # 激活第二个子图
    plt.bar(x, y)
    
    plt.show()
    

代码示例:多图组合展示

import matplotlib.pyplot as plt

# 数据
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]
z = [5, 4, 3, 2, 1]

# 创建 2x2 子图
plt.subplot(2, 2, 1)
plt.plot(x, y)
plt.title("Line Plot")

plt.subplot(2, 2, 2)
plt.scatter(x, z)
plt.title("Scatter Plot")

plt.subplot(2, 2, 3)
plt.bar(x, y)
plt.title("Bar Plot")

plt.subplot(2, 2, 4)
plt.pie([30, 40, 30], labels=["A", "B", "C"], autopct='%1.1f%%')
plt.title("Pie Chart")

# 显示所有子图
plt.tight_layout()  # 自动调整子图布局
plt.show()

总结

Matplotlib 提供了丰富的函数来定制图表的外观和行为,从而帮助你有效地展示数据。掌握以下几个基本函数将帮助你更好地创建和美化图表:

  • plot(), scatter(), bar(), hist(), pie() 等用于绘制不同类型的图表。
  • title(), xlabel(), ylabel() 用于设置标题和标签。
  • xlim(), ylim() 用于设置坐标轴范围。
  • legend() 用于添加图例。

此外,Matplotlib 还提供了更多高级功能来定制图表的每个细节,建议多加实践,熟练掌握这些常用函数。

去1:1私密咨询

系列课程: