matplotlib

简介: 【6月更文挑战第9天】

matplotlib.pyplot 是 Python 中一个用于创建静态、动画和交互式可视化的库,特别适合用于科学计算。它提供了一个类似于 MATLAB 的绘图框架,简化了图表的创建和自定义。以下是对 matplotlib.pyplot 库的详细介绍。

基本概念

  1. pyplotmatplotlib.pyplot 是 Matplotlib 库的一个子库,提供了一个类似 MATLAB 的绘图 API。通过这个 API,可以方便地创建各种类型的图表。
  2. Figure:图形的容器,可以包含一个或多个子图(Axes)。
  3. Axes:图的实际区域,一个 Figure 可以包含多个 Axes。
  4. Axis:指的是 x 轴和 y 轴,每个 Axes 对象有两个 Axis 对象(一个用于 x 轴,一个用于 y 轴)。

安装

如果尚未安装 Matplotlib,可以通过以下命令安装:

pip install matplotlib

基本用法

以下是一些常用的 matplotlib.pyplot 操作。

导入库

import matplotlib.pyplot as plt

创建简单的折线图

# 准备数据
x = [1, 2, 3, 4]
y = [10, 20, 25, 30]

# 创建图形
plt.figure()

# 绘制图形
plt.plot(x, y)

# 添加标题和标签
plt.title("Simple Line Plot")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")

# 显示图形
plt.show()

创建多个子图

# 准备数据
x = [1, 2, 3, 4]
y1 = [10, 20, 25, 30]
y2 = [30, 25, 20, 10]

# 创建图形和子图
fig, axs = plt.subplots(2)

# 绘制第一个子图
axs[0].plot(x, y1)
axs[0].set_title('First Subplot')

# 绘制第二个子图
axs[1].plot(x, y2)
axs[1].set_title('Second Subplot')

# 显示图形
plt.tight_layout()
plt.show()

添加图例

# 准备数据
x = [1, 2, 3, 4]
y1 = [10, 20, 25, 30]
y2 = [30, 25, 20, 10]

# 创建图形
plt.figure()

# 绘制图形
plt.plot(x, y1, label='Line 1')
plt.plot(x, y2, label='Line 2')

# 添加标题和标签
plt.title("Line Plot with Legend")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")

# 添加图例
plt.legend()

# 显示图形
plt.show()

常见图表类型

折线图(Line Plot)

x = [1, 2, 3, 4]
y = [10, 20, 25, 30]

plt.plot(x, y)
plt.title("Line Plot")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.show()

散点图(Scatter Plot)

x = [1, 2, 3, 4]
y = [10, 20, 25, 30]

plt.scatter(x, y)
plt.title("Scatter Plot")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.show()

条形图(Bar Plot)

x = ['A', 'B', 'C', 'D']
y = [10, 20, 25, 30]

plt.bar(x, y)
plt.title("Bar Plot")
plt.xlabel("Categories")
plt.ylabel("Values")
plt.show()

直方图(Histogram)

data = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]

plt.hist(data, bins=4)
plt.title("Histogram")
plt.xlabel("Value")
plt.ylabel("Frequency")
plt.show()

饼图(Pie Chart)

labels = ['A', 'B', 'C', 'D']
sizes = [10, 20, 30, 40]

plt.pie(sizes, labels=labels, autopct='%1.1f%%')
plt.title("Pie Chart")
plt.show()

自定义图表

Matplotlib 提供了丰富的自定义选项,可以对图表进行详细的调整和美化。

自定义颜色和样式

x = [1, 2, 3, 4]
y = [10, 20, 25, 30]

plt.plot(x, y, color='green', linestyle='--', marker='o')
plt.title("Custom Line Plot")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.show()

添加注释

x = [1, 2, 3, 4]
y = [10, 20, 25, 30]

plt.plot(x, y)
plt.title("Annotated Line Plot")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")

# 添加注释
plt.annotate('Highest Point', xy=(4, 30), xytext=(3, 25),
             arrowprops=dict(facecolor='black', shrink=0.05))

plt.show()

设置坐标轴范围和刻度

x = [1, 2, 3, 4]
y = [10, 20, 25, 30]

plt.plot(x, y)
plt.title("Custom Axis Range and Ticks")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")

# 设置坐标轴范围
plt.xlim(0, 5)
plt.ylim(0, 35)

# 设置刻度
plt.xticks([0, 1, 2, 3, 4, 5])
plt.yticks([0, 10, 20, 30, 40])

plt.show()

保存图表

x = [1, 2, 3, 4]
y = [10, 20, 25, 30]

plt.plot(x, y)
plt.title("Save Plot Example")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")

# 保存图表为 PNG 文件
plt.savefig('plot.png')

# 显示图表
plt.show()
目录
相关文章
|
25天前
|
API Python
Matplotlib Pyplot
Matplotlib Pyplot
26 3
|
2月前
|
Python
Matplotlib 教程 之 Matplotlib 散点图 1
通过设置参数如点的大小(`s`)、颜色(`c`)和样式(`marker`)等,可以定制图表外观。示例展示了如何用两个长度相同的数组分别表示 x 和 y 轴的值来创建基本散点图。
47 12
|
3月前
|
存储 数据可视化 索引
Matplotlib(一)
Matplotlib(一)
|
2月前
|
Python
Matplotlib 教程 之 Matplotlib 散点图 5
使用 Matplotlib 的 `scatter()` 方法绘制散点图,并详细解释了该方法的参数,如点的大小(`s`)、颜色(`c`)、样式(`marker`)等。通过一个实例展示了如何利用随机数生成数据点 (`x`, `y`) 及其颜色和面积,并设置了图表的标题。此示例代码展示了散点图的基本绘制方法及其参数配置。
34 2
|
2月前
|
数据可视化 Python
Matplotlib 教程 之 Matplotlib 散点图 7
使用 Matplotlib 的 `scatter()` 方法绘制散点图。该方法接受多个参数,如 x 和 y 数据点、点的大小(s)、颜色(c)和样式(marker)等。通过示例展示了如何利用颜色数组和颜色映射 (`cmap`) 来增强图表的表现力,并使用 `colorbar()` 方法添加颜色条,使数据可视化更加直观。
34 1
|
3月前
|
API Python
Matplotlib 教程 之 Matplotlib Pyplot 2
Matplotlib 的子库 Pyplot 提供了类似 MATLAB 的绘图 API,是常用的 2D 图表绘制模块。通过 `import matplotlib.pyplot as plt` 导入后,可使用如 `plot()`, `scatter()`, `bar()`, `hist()`, `pie()`, `imshow()` 和 `subplots()` 等函数来轻松生成并调整图表。其中 `plot()` 用于绘制线图和散点图,接受 `x` 和 `y` 数据及可选格式参数 `fmt`。
38 8
|
3月前
|
API Python
Matplotlib 教程 之 Matplotlib Pyplot 3
Matplotlib Pyplot 是 Matplotlib 的子库,提供了类似 MATLAB 的绘图 API,常用于绘制 2D 图表。通过 `import matplotlib.pyplot as plt` 导入后,可使用如 `plot()`、`scatter()`、`bar()`、`hist()`、`pie()`、`imshow()` 和 `subplots()` 等函数进行绘图。此外,还支持设置图表属性、添加文本和保存图表等功能。示例代码展示了如何绘制从 (1, 3) 到 (8, 10) 的线。
22 6
|
3月前
|
API Python
Matplotlib 教程 之 Matplotlib Pyplot 8
Matplotlib教程之Matplotlib Pyplot第8部分介绍了Pyplot子库,其提供类似MATLAB的绘图API,常用于绘制2D图表。通过导入`matplotlib.pyplot`并设置别名`plt`来使用其功能,如`plot()`、`scatter()`、`bar()`等。此外还支持颜色、线型及标记参数,示例展示了如何绘制正弦和余弦图形。
20 2
|
3月前
|
API Python
Matplotlib 教程 之 Matplotlib Pyplot 1
Matplotlib Pyplot 是 Matplotlib 的一个子库,提供了与 MATLAB 类似的绘图 API。它常用於绘制 2D 图表,包含了一系列可以对当前图像进行修改的函数,如添加标记、生成新图像等。通过 `import matplotlib.pyplot as plt` 导入后,可使用如 `plot()`、`scatter()`、`bar()`、`hist()`、`pie()` 和 `imshow()` 等函数绘制不同类型的图表,并可通过其他函数设置图表属性、添加文本或保存图表。例如,使用 `plot()` 可根据指定坐标绘制线图。
32 5
|
3月前
|
API Python
Matplotlib 教程 之 Matplotlib Pyplot 4
Matplotlib 子库 Pyplot,提供了类似 MATLAB 的绘图 API,便于用户绘制 2D 图表。Pyplot 包含一系列函数,如 `plot()`、`scatter()`、`bar()`、`hist()`、`pie()` 和 `imshow()` 等,可对图像进行各种修改。通过 `import matplotlib.pyplot as plt` 导入库后,即可使用这些函数。此外,还介绍了颜色、线型和标记等参数的使用方法。
20 2

相关课程

更多