Leyenda personalizada en el gráfico de barras Pandas (matplotlib)

He creado un diagtwig de barras con Pandas donde muestro cómo cambia la cantidad en algunos países y configuro el color de la barra según el continente de cada país. Trazo la gráfica usando el siguiente código. El código se basa en la segunda respuesta de esta pregunta :

s = pd.Series( listOfQuantities, listOfCountiesNames ) ''' Assign color to each country based on the continent ''' colormapping = {'AF':'k','AS':'r','EU':'g','OC':'r','NA':'b','SA':'y'} colorstring = "" for country in listOfCountiesNames: continent = countryToContinent[country] colorstring += colormapping[continent] pd.Series.plot( s, kind='bar', color=colorstring, grid=False, ) 

Quiero crear una leyenda como la que muestro en la imagen adjunta (la leyenda no fue generada por Python, la agregué manualmente). ¿Es posible dibujar tales leyendas personalizadas con pandas, o puedo lograr algo similar con otras bibliotecas gráficas? También agradecería sugerencias para tipos de gráficos alternativos para este tipo de datos.

introduzca la descripción de la imagen aquí

Así que después de su ttwig de la serie podría agregar esto

 import matplotlib.patches as mpatches import matplotlib.pyplot as plt NA = mpatches.Patch(color='blue', label='North America') EU = mpatches.Patch(color='green', label='Europe') AP = mpatches.Patch(color='red', label='Asia/Pacific') SA = mpatches.Patch(color='yellow', label='South America') plt.legend(handles=[NA,EU,AP,SA], loc=2) plt.show()