如何在 Python Matplotlib 中绘制带插值的精确召回率曲线?

matplotlibpythondata visualization

要在 Python 中绘制带插值的精确召回率曲线,我们可以采取以下步骤 −

步骤

  • 设置图形大小并调整子图之间和周围的填充。

  • 使用 numpy 创建 rp 和重复召回率、i 数据点。

  • 创建一个图形和一组子图。

  • r.shape 范围内绘制召回率矩阵。

  • 使用 plot() 方法绘制 r 和 dup_r 数据点。

  • 要显示图形,请使用show() 方法。

示例

import numpy as np
import matplotlib.pyplot as plt

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

r = np.linspace(0.0, 1.0, num=10)
p = np.random.rand(10) * (1. - r)
dup_p = p.copy()
i = r.shape[0] - 2

while i >= 0:
   if p[i + 1] > p[i]:
      p[i] = p[i + 1]
   i = i - 1

fig, ax = plt.subplots()

for i in range(r.shape[0] - 1):
   ax.plot((r[i], r[i]), (p[i], p[i + 1]), 'k-', label='', color='red')
   ax.plot((r[i], r[i + 1]), (p[i + 1], p[i + 1]), 'k-', label='', color='red')

ax.plot(r, dup_p, 'k--', color='blue')
plt.show()

输出

它将产生以下输出 −


相关文章