I'm learning about all the colormaps to update the documentation. and it seems some were copied from ColorBrewer and converted into continuous smoothly-varying maps. But ColorBrewer has 3 types of schemes:
Sequential palettes are suited to ordered data that progress from low to high. Lightness steps dominate the look of these schemes, with light colors for low data values to dark colors for high data values.
Diverging palettes put equal emphasis on mid-range critical values and extremes at both ends of the data range. The critical class or break in the middle of the legend is emphasized with light colors and low and high extremes are emphasized with dark colors that have contrasting hues.
Qualitative palettes do not imply magnitude differences between legend classes, and hues are used to create the primary visual differences between classes. Qualitative schemes are best suited to representing nominal or categorical data.
So the "qualitative" maps (Accent, Dark2, Paired, Pastel1, Pastel2, Set1, Set2, Set3) should not be smoothly-varying.
It's possible to convert these to segmented maps: https://gist.github.com/2719900#file_accent.py
Should I go through them and do that and submit a patch? I'm not sure if the matplotlib colormaps are even meant to be used for categorical data like this.
Ok, I wasn't aware of ListedColormap. Is there a way to use these colormaps with it? All the examples I see just use an explicit list, like cmap = mpl.colors.ListedColormap(['r', 'g', 'b', 'c'])
cmap = mpl.colors.ListedColormap(['r', 'g', 'b', 'c'])
I wonder if the binary colormap belongs in the same group. It's produces an identical gradient to gray_r, but the example included with it only uses the most extreme values of pure white or pure black. I'm not sure why it exists.
I think this issue can be closed, based on #921 having been merged.
#921 isn't related to this, but the docs change in #889 to discourage their use is. (endolith@cce4441#L0R1789)
Thank you for the correction.