如何在 Matplotlib 中为代表相同标签的每个标记设置标题?

matplotlibpythondata visualization

要在 Matplotlib 中为代表相同标签的每个标记设置标题,我们可以采取以下步骤 −

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

  • 使用 Numpy 创建 x 个数据点。

  • 使用 plot() 方法创建四条曲线,c1、c2、c3c4

  • 在图形上放置图例,使相同的标签标记聚集在一起。

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

示例

import numpy as np
from matplotlib import pyplot as plt, legend_handler

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

x = np.linspace(-10, 10, 100)

c1, = plt.plot(x, np.sin(x), ls='dashed', label='y=sin(x)')
c2, = plt.plot(x, np.sin(x+0.25), ls='dashdot', label='y=sin(x)')
c3, = plt.plot(x, np.cos(x), ls='solid', label='y=cos(x)')
c4, = plt.plot(x, np.cos(x+0.25), ls=':', label='y=cos(x)')

plt.legend([(c1, c2), (c3, c4)], ['y=sin(x)', 'y=cos(x)'], loc='upper right', handler_map={tuple: legend_handler.HandlerTuple(ndivide=None)})

plt.show()

输出


相关文章