使用颜色映射
1、什么是彩色地图?
彩色地图是实数的三列矩阵。
矩阵中的每一行都是一个RGB三元组值,它在颜色映射中定义一种颜色。
MATLAB通过将定义曲面的数据映射到颜色图中的颜色来绘制曲面和其他对象。
默认颜色映射
下面的图片显示了使用默认颜色贴图绘制的一个表面,它被称为“小面”。
命令行键入:
figure
surf(peaks)
2、按“Enter”键。
如图1所示。
3、Parula是MATLAB中的默认颜色贴图,因为它有自然的感知顺序(从暗到亮),而且它是感知一致的。
由于这种特性,数据中的平滑变化被看作是颜色的平滑变化,而数据中的急剧变化被看作是颜色的急剧变化。
每个内置的颜色映射有一个相应的函数,该函数返回RGB三元组的矩阵。
颜色映射的默认大小是64色。
命令行键入:
my_colormap = parula;
size(my_colormap)
4、更改颜色贴图
若要更改颜色贴图,请使用颜色贴图功能。
colormap函数接受一个输入参数,该参数要么是内置颜色映射的名称,要么是一个三列矩阵的RGB三值。
默认情况下,colormap函数将更改当前图形中的所有内容的colormap。
命令行键入:
surf(peaks)
colormap(summer)
5、按“Enter”键。
如图2所示。
6、每个图创建多个颜色图
若要更改图形中特定图形或图形中特定轴的颜色映射,请将带有图形或轴对象的颜色映射函数作为第一个参数。
例如,为图中的每个轴使用不同的颜色图。
命令行键入:
ax1 = subplot(2,1,1);
surf(peaks(15))
colormap(ax1, autumn)
ax2 = subplot(2,1,2);
surf(peaks(15))
colormap(ax2, winter)
7、按“Enter”键。
如图3所示。
8、设置颜色贴图大小
颜色图的大小决定了颜色之间过渡的平滑程度。
具有少量颜色的颜色映射在颜色之间有尖锐的过渡。
较大的颜色映射提供了更平滑的颜色之间的过渡。
若要更改颜色映射中的颜色数,请将一个整数值传递给内置的颜色映射。
命令行键入:
clf
surf(peaks)
shading interp
colormap(jet(10))
9、按“Enter”键。
如图4所示。
10、要使用较大的colormap,请将较大的值传递给内置的colormap。
命令行键入:
colormap(jet(300))
11、按“Enter”键。
如图5所示。