要设置图例的渐变样式,可以使用matplotlib.patches
模块中的Polygon
类,并将其添加到legend_handles_labels
参数中。
以下是一个示例代码:
import matplotlib.pyplot as plt
from matplotlib.patches import Polygon
x = [1, 2, 3, 4, 5]
y1 = [1, 4, 9, 16, 25]
y2 = [1, 3, 6, 10, 15]
fig, ax = plt.subplots()
line1, = ax.plot(x, y1, label='Line 1')
line2, = ax.plot(x, y2, label='Line 2')
# 创建一个渐变样式的图例
legend_handles = [line1, line2]
legend_labels = [handle.get_label() for handle in legend_handles]
gradient = Polygon([(0, 0), (1, 0), (1, 1), (0, 1)], facecolor='b', edgecolor='none', transform=fig.transFigure)
legend_handles.append(gradient)
legend_labels.append('Gradient')
ax.legend(legend_handles, legend_labels)
plt.show()
在这个示例中,我们创建了两条折线图并添加了一个渐变样式的图例。我们使用Polygon
类创建了一个矩形,并将其添加到了legend_handles
和legend_labels
中。最后,我们调用ax.legend()
方法来显示图例。