Tengo un gráfico en el que se usan colores diferentes para diferentes parámetros, y donde se usan diferentes estilos de línea para diferentes algoritmos. El objetivo es comparar los resultados de los diferentes algoritmos realizados con parámetros similares. Significa que utilizo en total 4 colores diferentes y 3 estilos de línea diferentes, para un total de 12 gráficos en el mismo gráfico.matplotlib: 2 leyendas diferentes en el mismo gráfico
De hecho construyo la leyenda basada en colores, asociando cada color con el parámetro correspondiente. Ahora me gustaría mostrar una segunda leyenda en el mismo gráfico, con el significado de cada estilo de línea. Es posible lograr eso? ¿Cómo?
Esto es lo que se ve mi código como realidad:
colors = ['b', 'r', 'g', 'c']
cc = cycle(c)
for p in parameters:
d1 = algo1(p)
d2 = algo2(p)
d3 = algo3(p)
pyplot.hold(True)
c = next(cc)
pyplot.plot(d1, '-', color=c, label="d1")
pyplot.plot(d1, '--', color=c)
pyplot.plot(d2, '.-', color=c)
pyplot.legend()
Así que la clave está en 'add_artist' ... por alguna razón loca matplotlib decide que sabe mejor y elimina la leyenda original, luego debe agregarla más tarde. Gracias por la ayuda, voy a tomar una cerveza. –