web-dev-qa-db-fra.com

Titre de la légende matplotlib

Je sais qu’il semble assez redondant d’avoir un titre pour une légende, mais est-il possible d’utiliser Matplotlib?

Voici un extrait du code que j'ai:

import matplotlib.patches as mpatches
import matplotlib.pyplot as plt

one = mpatches.Patch(facecolor='#f3f300', label='label1', linewidth = 0.5, edgecolor = 'black')
two = mpatches.Patch(facecolor='#ff9700', label = 'label2', linewidth = 0.5, edgecolor = 'black')
three = mpatches.Patch(facecolor='#ff0000', label = 'label3', linewidth = 0.5, edgecolor = 'black')

legend = plt.legend(handles=[one, two, three], loc = 4, fontsize = 'small', fancybox = True)

frame = legend.get_frame() #sets up for color, Edge, and transparency
frame.set_facecolor('#b4aeae') #color of legend
frame.set_edgecolor('black') #Edge color of legend
frame.set_alpha(1) #deals with transparency
plt.show()

Je voudrais le titre de la légende ci-dessus label1. Pour référence, voici la sortie: Showing legend

25
Brandon Molyneaux

Ajoutez le paramètre title à la ligne this:

legend = plt.legend(handles=[one, two, three], title="title", loc=4, fontsize='small', fancybox=True)

Voir aussi le documentation officielle du constructeur legend .

33
Alper Fırat Kaya