Using a colormap for matplotlib line plots

npross picture npross · Sep 19, 2017 · Viewed 17.1k times · Source

I’d like to employ the reverse Spectral colormap ,

https://matplotlib.org/examples/color/colormaps_reference.html

for a lineplot.

This works fine with a hex bin plot::

color_map = plt.cm.Spectral_r
image = plt.hexbin(x,y,cmap=color_map)

but when I do

ax1.plot(x,y, cmp=color_map)

this gives me::

AttributeError: Unknown property cmap

Note, I just want to set the colormap and let matplotliob do the rest; i.e. I don't want to have a color=' argument in the .plot command.

Answer

JoeZuntz picture JoeZuntz · Sep 19, 2017

You can have a look at the top answer here - the third variant is what you want:

use matplotlib color map for color cycle

You need to know how many lines you're plotting in advance, as otherwise it doesn't know how to choose the colours from the range.