I'm trying to use the matplotlib.imshow
to plot a boolean 2d array and I'd like to be able to pick the two colours (one for true
and one for false
). It seems that this argument should be passed as a colormap to imshow
but in my case it seems a bit of an overkill as I don't need continuous and, more important, I don't know how to define a custom colormap (the matplotlib doc hasn't helped me with that).
Asked
Active
Viewed 1.3k times
13

Learning is a mess
- 7,479
- 7
- 35
- 71
-
can you link to the doc that you were reading and explain what wasn't clear? – Paul H Oct 28 '14 at 20:41
-
1You can make color maps with a discrete number of steps, just use 2 for binary data – tacaswell Oct 28 '14 at 20:49
-
http://stackoverflow.com/questions/14777066/matplotlib-discrete-colorbar – tacaswell Oct 28 '14 at 20:50
1 Answers
28
import matplotlib.pyplot as plt
import matplotlib.colors
# Color for False and True
cmap = matplotlib.colors.ListedColormap(['red', 'green'])
plt.imshow([True, False], [False, True]], cmap=cmap)

DieterDP
- 4,039
- 2
- 29
- 38
-
6
-
12Indeed, 6years since I asked that. Finally I can close this and move on with my life =) – Learning is a mess Dec 15 '20 at 14:46