如何使用 Python 在 Matplotlib 中向图形图添加标记?

matplotlibpythondata visualization

在使用 Python 库 Matplotlib 创建绘图时,一项常见任务是添加标记以指示数据点。Matplotlib 提供了多种标记样式,包括圆形、三角形、正方形、点和菱形。这些标记可以进一步定制为不同的大小、颜色和边缘大小。在本文中,我们将讨论如何使用 Python 在 Matplotlib 中向图形图添加标记并对其进行自定义。

Matplotlib

Matplotlib 是一个主要用于为 Python 编程语言和 NumPy(其数值数学扩展)绘制图形和绘图的库。 Tkinter、wxPython、Qt 和 GTK GUI 工具包可能包含利用其面向对象 API 的图表。

matplotlib.pyplot 是一组命令式方法,允许 matplotlib 以类似于 MATLAB 的方式运行。每个 pyplot 函数都会以某种方式改变图形,无论是通过添加绘图区域、绘制线条、添加标签等。

Pyplot 是 Python matplotlib 实用程序的一个子模块。它是一个 Python 库,包含用于绘制 2D 图形的函数和方法集合。

Matplotlib.markers

matplotlib 的 marker 参数用于向图形图中添加标记。它有一些函数来处理标记。它被 plot 和 scatter 用于标记功能。

语法

plt.plot(values, marker= 'value')

如何在 Matplotlib 中向图形图添加标记?

我们将使用 Matplotlib 的 marker 参数向图形图添加标记。

让我们看一个例子 −

示例

import matplotlib.pyplot as p

# 创建一些示例数据
x = [11, 22, 33, 44, 55,66,77,88,99,100]
y = [88, 44, 11, 99, 55,77,66,100,33,11]

# 创建以圆圈为标记的散点图
p.scatter(x, y, marker='o')

# 显示图
p.show()

输出

自定义标记大小和颜色

我们可以使用 scatter() 函数的 s 和 c 参数自定义标记的大小和颜色。s 参数指定标记的大小,c 参数指定标记的颜色。让我们看一个例子。

示例

import matplotlib.pyplot as p

# 创建一些示例数据
x = [11, 22, 33, 44, 55, 66, 77, 88, 99, 100]
y = [88, 44, 11, 99, 55, 77, 66, 100, 33, 11]

# 创建带有自定义标记的散点图
p.scatter(x, y, marker='o', s=100, c='red')

# 添加标签和标题
p.xlabel('X 轴')
p.ylabel('Y 轴')
p.title('带有不同大小和颜色标记的图表')

# 显示图表
p.show()

输出

在上面的例子中,我们设置了标记 100 的大小和红色。

自定义标记边缘样式

我们还可以使用函数 scatter() 的 edgecolors 参数自定义标记的边缘样式。 edgecolors 参数指定标记边缘的颜色。

示例

import matplotlib.pyplot as p

# 创建一些示例数据
x = [11, 22, 33, 44, 55, 66, 77, 88, 99, 100]
y = [88, 44, 11, 99, 55, 77, 66, 100, 33, 11]

# 创建带有自定义标记的散点图
p.scatter(x, y, marker='s', s=100, c='red', edgecolors='black')

# 添加标签和标题
p.xlabel('X 轴')
p.ylabel('Y 轴')
p.title('Graph使用不同大小和颜色的标记')

# 显示图
p.show()

输出

使用不同的标记样式

Matplotlib 提供了多种标记样式,可用于指示图形图上的数据点。下表列出了一些常用的标记样式。

S.No

标记样式

说明

1.

'o'

圆形标记

2.

's'

方形标记

3.

'^'

三角形标记

4.

'd'

菱形标记

5.

'.'

点形标记

要使用不同的标记样式,只需将 scatter() 函数的 marker 参数设置为所需的标记样式即可。

添加菱形标记的程序

import matplotlib.pyplot as plt

# 创建一些示例数据
x = [11, 22, 33, 44, 55, 66, 77, 88, 99, 100]
y = [88, 44, 11, 99, 55, 77, 66, 100, 33, 11]

# 创建以三角形为标记的散点图
plt.scatter(x, y, marker='d', s=100, c='blue', edgecolors='black')

# 添加标签和标题
plt.xlabel('X 轴')
plt.ylabel('Y 轴')
plt.title('带有菱形标记的图表')

# 显示图表
plt.show()

输出

添加三角形标记的程序

import matplotlib.pyplot as p

# 创建一些示例数据
x = [11, 22, 33, 44, 55,66,77,88,99,100]
y = [88, 44, 11, 99, 55,77,66,100,33,11]

# 创建以三角形为标记的散点图
p.scatter(x, y, marker='^')

# 添加标签和标题
p.xlabel('X 轴')
p.ylabel('Y Axis')
p.title('带有三角形标记的图表')

# 显示图表
p.show()

输出

结论

总之,我们可以用 Python 在 Matplotlib 中向图表添加标记,并根据需要进行自定义。Matpoltlib 提供了多种标记样式,包括圆形、菱形、圆点、三角形和正方形,可用于指示图表上的数据点。还可以使用 scatter() 函数的各种不同参数自定义标记的大小、颜色和边缘样式。我们可以在 Python 中使用 Matplotlib 借助标记创建一个视觉上吸引人且信息丰富的图表。


相关文章