📜  如何注释 Matplotlib 散点图?

📅  最后修改于: 2022-05-13 01:54:34.824000             🧑  作者: Mango

如何注释 Matplotlib 散点图?

散点图使用点来表示两个不同数值变量的值。在Python,我们有一个库 matplotlib,其中有一个名为 scatter 的函数可以帮助我们创建散点图。在这里,我们将使用 matplotlib.pyplot.scatter() 方法进行绘图。

matplotlib 的注释意味着我们要在散点图旁边放置一段文本。根据我们必须注释的点数,可能有两种情况:

  1. 单点注释
  2. 所有点注释

单点注释

在单点注释中,我们可以使用 matplotlib.pyplot.text 并提及散点的 x 坐标和 y 坐标 + 一些因素,以便从图中可以清楚地看到文本,然后我们必须提及文本。



方法:

  1. 导入库。
  2. 创建数据。
  3. 制作散点图。
  4. 应用 plt.text() 方法。

执行:

Python3
# Importing libraries
import matplotlib.pyplot as plt
  
# Preparing dataset
x = [x for x in range(10)]
y = [5, 4, 4, 8, 5, 6, 8, 7, 1, 3]
  
# plotting scatter plot
plt.scatter(x, y)
  
# annotation of the third point
plt.text(2,4.2,"third")
plt.show()


Python3
# Importing libraries
import matplotlib.pyplot as plt
  
# Preparing dataset
x = [x for x in range(10)]
y = [5, 2, 4, 8, 5, 6, 8, 7, 1, 3]
text = ["first", "second", "third", "fourth", "fifth",
        "sixth", "seventh", "eighth", "ninth", "tenth"]
  
# plotting scatter plot
plt.scatter(x, y)
  
# Loop for annotation of all points
for i in range(len(x)):
    plt.annotate(text[i], (x[i], y[i] + 0.2))
  
# adjusting the scale of the axes
plt.xlim((-1, 10))
plt.ylim((0, 10))
plt.show()


输出:

所有点注释

如果我们想注释散点图中的所有点,那么 matplotlib.pyplot 有一个内置函数annotate,它接受点的文本、x 和 y 坐标。



方法:

  1. 导入库。
  2. 创建数据。
  3. 按照要显示的点的顺序将所有注释存储在一个列表中。
  4. 绘制散点图。
  5. 使用 for 循环注释每个点。

执行:

蟒蛇3

# Importing libraries
import matplotlib.pyplot as plt
  
# Preparing dataset
x = [x for x in range(10)]
y = [5, 2, 4, 8, 5, 6, 8, 7, 1, 3]
text = ["first", "second", "third", "fourth", "fifth",
        "sixth", "seventh", "eighth", "ninth", "tenth"]
  
# plotting scatter plot
plt.scatter(x, y)
  
# Loop for annotation of all points
for i in range(len(x)):
    plt.annotate(text[i], (x[i], y[i] + 0.2))
  
# adjusting the scale of the axes
plt.xlim((-1, 10))
plt.ylim((0, 10))
plt.show()

输出: