Search code examples
pythoncolorsfontsmatplotliblegend

How to change the text color of font in legend?


Is there a way to change the font color of the legend in a matplotlib plot?

Specially in occasions where the background of the plot is dark, the default black text in the legend is hard or impossible to read.


Solution

  • call Legend.get_texts() will get a list of Text object in the legend object:

    import pylab as pl
    pl.plot(randn(100), label="randn")
    l = legend()
    for text in l.get_texts():
        text.set_color("red")