matplotlib: 2 legendas diferentes no mesmo gráfico

Eu tenho um gráfico onde diferentes cores são usadas para diferentes parâmetros e onde diferentes estilos de linha são usados ​​para diferentes algoritmos. O objetivo é comparar os resultados dos diferentes algoritmos realizados com parâmetros semelhantes. Isso significa que no total eu uso 4 cores diferentes e 3 estilos de linhas diferentes, para um total de 12 gráficos no mesmo gráfico.

Eu realmente construo a legenda baseada em cores, associando cada cor com o parâmetro correspondente. Agora gostaria de exibir uma segunda legenda no mesmo gráfico, com o significado de cada estilo de linha. É possível conseguir isso? Como?

Aqui está o meu código, na verdade:

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()

questionAnswers(2)

yourAnswerToTheQuestion