View and set current colormap
cmap = colormap
cmap = colormap(target)
colormap sets the colormap for the current
figure to one of the predefined colormaps. If you set the colormap for the
figure, then axes and charts in the figure use the same colormap. The new
colormap is the same length (number of colors) as the current colormap. When you
use this syntax, you cannot specify a custom length for the colormap. To learn
more about colormaps, see What Is a Colormap?
Create a surface plot and set the colormap to
surf(peaks) colormap winter
First, change the colormap for the current figure to
surf(peaks) colormap summer
Now set the colormap back to your system's default value. If you have not specified a different default value, then the default colormap is
Create a figure with two subplots and store the axes handles,
ax2. Use a different colormap for each axes by passing the axes handles to the
colormap function. In the upper subplot, create a surface plot using the
spring colormap. In the lower subplot, create a surface plot using the
ax1 = subplot(2,1,1); surf(peaks) colormap(ax1,spring) ax2 = subplot(2,1,2); surf(peaks) colormap(ax2,winter)
Specify the number of colors used in a colormap by passing an integer as an input argument to the built-in colormap. Use five colors from the parula colormap.
Create a custom colormap by defining a three-column matrix of values between 0.0 and 1.0. Each row defines a three-element RGB triplet. The first column specifies the red intensities. The second column specifies the green intensities. The third column specifies the blue intensities.
Use a colormap of blue values by setting the first two columns to zeros.
map = [0 0 0.3 0 0 0.4 0 0 0.5 0 0 0.6 0 0 0.8 0 0 1.0]; surf(peaks) colormap(map)
Create a surface plot of the
peaks function and specify a colormap.
Return the three-column matrix of values that define the colors used in the plot. Each row is an RGB triplet color value that specifies one color of the colormap.
cmap = colormap
cmap = 5×3 1.0000 0 0 1.0000 0.2500 0 1.0000 0.5000 0 1.0000 0.7500 0 1.0000 1.0000 0
Return the colormap values for a specific axes by passing its axes handle to the
Create a figure with two subplots and return the axes handles,
ax2. Add a filled contour plot to each axes and use a different colormap for each axes.
ax1 = subplot(2,1,1); contourf(peaks) colormap(ax1,hot(8)) ax2 = subplot(2,1,2); contourf(peaks) colormap(ax2,pink)
Return the colormap values used in the upper subplot by passing its axes handle,
ax1, to the
colormap function. Each row is an RGB triplet color value that specifies one color of the colormap.
cmap = colormap(ax1)
cmap = 8×3 0.3333 0 0 0.6667 0 0 1.0000 0 0 1.0000 0.3333 0 1.0000 0.6667 0 1.0000 1.0000 0 1.0000 1.0000 0.5000 1.0000 1.0000 1.0000
spine data set that returns the image
X and its associated colormap
X using the
image function and set the colormap to
load spine image(X) colormap(map)
map— Colormap for new color scheme
Colormap for the new color scheme, specified as a colormap name, a
three-column matrix of RGB triplets, or
colormap name specifies a predefined colormap with the same number of colors
as the current colormap. A three-column matrix of RGB triplets specifies a
custom colormap. You can create the matrix yourself, or you can call one of
the predefined colormap functions to create the matrix. For example,
colormap(parula(10)) sets the colormap of the current
figure to a selection of 10 colors from the
A value of
'default' sets the colormap to the default
colormap for the target object.
The following table lists the predefined colormaps.
|Colormap Name||Color Scale|
To create a custom colormap, specify
map as a
three-column matrix of RGB triplets where each row defines one color. An
RGB triplet is a three-element row vector whose elements specify the
intensities of the red, green, and blue components of the color. The
intensities must be in the range
[0,1]. For example,
this matrix defines a colormap containing five
map = [0.2 0.1 0.5 0.1 0.5 0.8 0.2 0.7 0.6 0.8 0.7 0.3 0.9 1 0];
This table lists the RGB triplet values for common colors.
PolarAxesobject | graphics object
Target, specified as one of these values:
Figure object. The figure colormap affects plots for all
axes within the figure.
Axes object or
object. You can define a unique colormap for the different axes
within a figure.
Graphics object that has a
For example, you can change or query the colormap for a
cmap— Colormap values
Colormap values, returned as a three-column matrix of RGB triplets. Each row of the matrix defines one RGB triplet that specifies one color of the colormap. The values are in the range [0, 1].
A colormap is matrix of values between
1 that define the colors for graphics objects such as
surface, image, and patch objects. MATLAB® draws the objects by mapping data values to colors in the
Colormaps can be any length, but must be three columns wide. Each row in the matrix defines
one color using an RGB triplet. An RGB triplet is a three-element row vector whose
elements specify the intensities of the red, green, and blue components of the
color. The intensities must be in the range [0, 1]. A value of
indicates no color and a value of
1 indicates full intensity. For
example, this command creates a colormap that has five colors: black, red, green,
mymap = [0 0 0 1 0 0 0 1 0 0 0 1 1 1 1];
To change the color scheme of a visualization, call the
to change the colormap of the containing axes or figure. For example, the following
commands create a surface plot and set the colormap of the figure to
Starting in R2018a, if you set the colormap for a figure, then axes and
charts in the figure use the same colormap. Previously, any axes or chart
that you set the colormap for explicitly were unaffected when you set the
figure colormap. If you want an
Axes object to use a
different colormap than the figure, then set the axes colormap after setting
the figure colormap.
To control the limits of the colormap, and how those limits relate to the range of your data,