To create a matplotlib colormap that treats one value specially, we can take the following steps −
- Set the figure size and adjust the padding between and around the subplots.
- Get a colormap instance, name is "rainbow".
- Set the color for low out-of-range values, using set_under('red') method.
- Create random data and eps using numpy.
- Create a figure and a set of subplots.
- Display data as an image, i.e., on a 2D regular raster, using imshow() method.
- Create a colorbar for a ScalarMappable instance, im.
- To display the figure, use show() method.
Example
import matplotlib.pyplot as plt import numpy as np plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True cmap = plt.get_cmap('rainbow') cmap.set_under('red') data = np.random.randn(5, 5) eps = np.spacing(0.0) fig, ax = plt.subplots() im = ax.imshow(data, interpolation='nearest', vmin=eps, cmap=cmap) fig.colorbar(im, extend='min') plt.show()