如何注释 matplotlib 散点图


您可以使用以下基本语法在 Matplotlib 中注释散点图:

 #add 'my text' at (x, y) coordinates = (6, 9.5)
plt. text (6, 9.5, ' my text ')

以下示例展示了如何在实践中使用此语法。

创建基本点云

以下代码展示了如何使用 Matplotlib 创建基本散点图:

 import matplotlib.pyplot as plt

#createdata
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]

#create scatterplot
plt. scatter (x,y)

注释单个点

我们可以使用以下代码向绘图上的单个点添加注释:

 import matplotlib.pyplot as plt

#create data
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]

#create scatterplot
plt. scatter (x,y)

#add text 'Here' at (x, y) coordinates = (6, 9.5)
plt. text (6, 9.5, ' Here ')

Matplotlib 中带有注释的散点图

注释多个点

我们可以使用以下代码向绘图上的多个点添加注释:

 import matplotlib.pyplot as plt

#create data
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]

#create scatterplot
plt. scatter (x,y)

#add text to certain points
plt. text (3, 4.5, ' This ')
plt. text (6, 9.5, ' That ')
plt. text (8.2, 14, ' Those ')

在 Matplotlib 点云上注释多个点

注释所有点

我们可以使用以下代码为绘图上的每个点添加注释:

 import matplotlib.pyplot as plt

#createdata
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]
labs = ['A', 'B', 'C', 'D', 'E']

#create scatterplot
plt. scatter (x,y)

#use for loop to add annotations to each point in plot 
for i, txt in enumerate(labs):
    plt. annotate (txt, (x[ i ], y[ i ])) 

注释 Matplotlib 点云

默认情况下,注释直接放置在点云中点的上方,默认字体大小为 10。

下面的代码展示了如何调整这两个设置,使注释稍微位于点的右侧,并且字体大小稍大一些:

 import matplotlib.pyplot as plt

#create data
x = [3, 6, 8, 12, 14]
y = [4, 9, 14, 12, 9]
labs = ['A', 'B', 'C', 'D', 'E']

#create scatterplot
plt. scatter (x,y)

#use for loop to add annotations to each point in plot 
for i, txt in enumerate(labs):
    plt. annotate (txt, (x[ i ]+.25, y[ i ]), fontsize=12) 

Matplotlib 注释每个绘图点

其他资源

以下教程解释了如何在 Matplotlib 中执行其他常见任务:

如何在 Matplotlib 中向散点图添加图例
如何在 Matplotlib 中按值对散点图着色
如何在 Matplotlib 中添加平均线

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注