如何在 Python 的 Matplotlib 中向图表添加标记?


在使用 Matplotlib(Python 的一个库)创建图表时,一个常见的任务是添加标记来指示数据点。Matplotlib 提供了各种标记样式,包括圆形、三角形、正方形、点和菱形。这些标记可以通过不同的尺寸、颜色和边框尺寸进一步自定义。在本文中,我们将讨论如何在 Python 的 Matplotlib 中向图表添加标记并自定义它们。

Matplotlib

Matplotlib 是一个主要用于为 Python 编程语言及其数值计算扩展库 NumPy 绘制图表和绘图的库。它面向对象的 API 可以包含使用 Tkinter、wxPython、Qt 和 GTK GUI 工具包的图表。

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

Pyplot 是 Python matplotlib 工具的一个子模块。它是一个 Python 库,包含一组用于绘制二维图表的函数和方法。

Matplotlib.markers

matplotlib 的 marker 参数用于向图表添加标记。它具有一些处理标记的函数。plot 和 scatter 都使用它来实现标记功能。

语法

plt.plot(values, marker= ‘value’)

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

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

让我们来看一个例子:

示例

import matplotlib.pyplot as p

# Create some sample data
x = [11, 22, 33, 44, 55,66,77,88,99,100]
y = [88, 44, 11, 99, 55,77,66,100,33,11]

# Create a scatter plot with circles as markers
p.scatter(x, y, marker='o')

# Show the plot
p.show()

输出

自定义标记大小和颜色

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

示例

import matplotlib.pyplot as p

# Create some sample data
x = [11, 22, 33, 44, 55, 66, 77, 88, 99, 100]
y = [88, 44, 11, 99, 55, 77, 66, 100, 33, 11]

# Create a scatter plot with customized markers
p.scatter(x, y, marker='o', s=100, c='red')

# Add labels and title
p.xlabel('X Axis')
p.ylabel('Y Axis')
p.title('Graph with different size and color markers')

# Show the plot
p.show()

输出

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

自定义标记边框样式

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

示例

import matplotlib.pyplot as p

# Create some sample data
x = [11, 22, 33, 44, 55, 66, 77, 88, 99, 100]
y = [88, 44, 11, 99, 55, 77, 66, 100, 33, 11]

# Create a scatter plot with customized markers
p.scatter(x, y, marker='s', s=100, c='red', edgecolors='black')

# Add labels and title
p.xlabel('X Axis')
p.ylabel('Y Axis')
p.title('Graph with different size and color markers')

# Show the plot
p.show()

输出

使用不同的标记样式

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

序号

标记样式

描述

1.

‘o’

圆形标记

2.

‘s’

正方形标记

3.

‘^’

三角形标记

4.

‘d’

菱形标记

5.

‘.’

点状标记

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

添加菱形标记的程序

import matplotlib.pyplot as plt

# Create some sample data
x = [11, 22, 33, 44, 55, 66, 77, 88, 99, 100]
y = [88, 44, 11, 99, 55, 77, 66, 100, 33, 11]

# Create a scatter plot with triangles as markers
plt.scatter(x, y, marker='d', s=100, c='blue', edgecolors='black')

# Add labels and title
plt.xlabel('X Axis')
plt.ylabel('Y Axis')
plt.title('Graph with diamond-shaped markers')

# Show the plot
plt.show()

输出

添加三角形标记的程序

import matplotlib.pyplot as p

# Create some sample data
x = [11, 22, 33, 44, 55,66,77,88,99,100]
y = [88, 44, 11, 99, 55,77,66,100,33,11]


# Create a scatter plot with triangles as markers
p.scatter(x, y, marker='^')

# Add labels and title
p.xlabel('X Axis')
p.ylabel('Y Axis')
p.title('Graph with Triangle Markers')

# Show the plot
p.show()

输出

结论

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

更新于:2023年5月31日

浏览量:1000+

启动您的职业生涯

完成课程获得认证

开始学习
广告