При отображении изображений с помощью image можно управлять тем, как диапазон значений пикселов сопоставляется с диапазоном карты цветов. Например, здесь представлен магический квадрат 5 на 5, отображаемый в виде изображения с использованием карты цветов по умолчанию.
A = magic(5)
A = 5×5
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
im = image(A);
axis off
colorbar
A содержит значения от 1 до 25. MATLAB ® обрабатывает эти значения как индексы в карте цветов, которая содержит 64 записи. Таким образом, все пиксели в предыдущем изображении сопоставляются с первыми 25 записями в карте цветов (примерно синяя область цветовой полосы).

Вы можете управлять этим отображением с помощью CDataMapping имущества Image объект. Поведение по умолчанию, показанное на предыдущей диаграмме, соответствует 'direct' для этого свойства. Прямое сопоставление полезно при отображении изображений (например, GIF-изображений), содержащих собственную карту цветов. Однако если изображение представляет измерения некоторых физических единиц (например, метров или градусов), то установите CDataMapping свойство для 'scaled'. Масштабированное сопоставление использует весь диапазон цветов и позволяет визуализировать относительные различия в данных.
im.CDataMapping = 'scaled';
'scaled' параметр сопоставляет наименьшее значение в A к первой записи в карте цветов и отображает наибольшее значение в A сопоставляется с последней записью в карте цветов. Все промежуточные значения A линейно масштабированы до карты цветов.

В качестве альтернативы установке CDataMapping свойство для 'scaled', вы можете позвонить imagesc функция для получения того же эффекта.
imagesc(A);
axis off
colorbar
При изменении карты цветов значения в A масштабированы до новой карты цветов.
colormap(gray);

Масштабированное сопоставление также полезно для отображения графических изображений, которые не имеют карты цветов, или когда требуется изменить карту цветов для графического изображения. Следующие команды отображают изображение с помощью gray colormap, который отличается от исходного colormap, который хранится с этим изображением.
load clown image(X,'CDataMapping','scaled'); colormap(gray); axis off colorbar
