对于您创建的许多类型的可视化,MATLAB®默认情况下将数据的全部范围映射到色彩图。数据中最小的值映射到颜色图中的第一行,最大的值映射到颜色图中的最后一行。所有中间值都线性映射到颜色图的中间行。
这个默认映射在大多数情况下是有用的,但是您可以在您选择的任何范围内执行映射,即使您选择的范围与您的数据范围不同。选择不同的映射范围允许您:
查看您的数据处于或超出该范围的限制位置。
看看数据在这个范围内的位置。
考虑表面Z=X+Y,其中-10≤x≤10和-10≤y≤10。
[X,Y] = meshgrid(-10:10);Z = x + y;s = surf(X,Y,Z);包含(“X”);ylabel (“Y”);zlabel (' z = c ');colorbar
表面绘图数据与色彩图的关系描述在此演示文稿中控制颜色的属性。本质上讲,CData
的属性表面
对象包含数组C
它将表面上的每个网格点与色彩图中的一种颜色关联起来。默认情况下,C
等于Z
,在那里Z
数组是否包含的值z=f(x,y)。因此,颜色随季节的变化而变化Z
.
控件控制映射范围这一
的属性轴
对象。此属性包含表单的双元素向量[cmin cmax]
.的默认值。cmin
等于的最小值C
的默认值cmax
的最大值是C
.在这种情况下,这一
是20 [-20]
因为的范围C
反映的范围Z
.
改变这一
来20 [0]
剪辑位于或低于的所有值0
颜色图中的第一个颜色。
此命令更改这一
财产20 [0]
.注意,表面的下半部分映射到色彩图中的第一个颜色(深蓝色)。这个剪切发生的原因是C
(等于Z
)在这些点上小于等于零。
caxis (20 [0]);
您还可以扩大映射范围,以查看数据在该范围内的位置。例如,将范围更改为20 [-60]
结果得到只使用一半颜色的表面。颜色图的下半部分对应于的范围之外的值C
,所以这些颜色没有在表面上表示出来。
caxis (20 [-60]);
请注意
您可以设置这一
属性用于表面图形、补丁、图像或任何使用色彩图的图形对象。但是,此属性只影响具有CDataMapping
属性设置为“缩放”
.如果CDataMapping
属性设置为“直接”
的所有值C
直接索引到色彩图,不需要任何缩放。的任何值C
小于1的被裁剪到colormap中的第一个颜色。的任何值C
大于色度图长度的将被裁剪到色度图的最后一个颜色。