colormap

Просмотрите и установите текущую палитру

Описание

пример

colormap map устанавливает палитру для текущей фигуры в одну из предопределенных палитр. Если вы устанавливаете палитру для рисунка, то оси и графики на рисунке используют ту же палитру. Новая палитра имеет ту же длину (количество цветов), что и текущая палитра. Когда вы используете этот синтаксис, вы не можете задать пользовательскую длину для палитры. Чтобы узнать больше о палитрах, смотрите Что такое Палитра?

пример

colormap(map) устанавливает палитру для текущей фигуры в палитру, заданную как map.

пример

colormap(target,map) устанавливает палитру для рисунка, осей или графика, заданную в target, вместо для текущей фигуры.

пример

cmap = colormap возвращает палитру для текущей фигуры в виде трехколоночной матрицы триплетов RGB.

пример

cmap = colormap(target) возвращает палитру для рисунка, осей или графика, заданную в target.

Примеры

свернуть все

Создать объемную поверхностную диаграмму и задать значение палитры winter.

surf(peaks)
colormap winter

Figure contains an axes. The axes contains an object of type surface.

Во-первых, измените палитру для текущей фигуры на summer.

surf(peaks)
colormap summer

Figure contains an axes. The axes contains an object of type surface.

Теперь верните палитру к значению по умолчанию вашей системы. Если вы не задали другое значение по умолчанию, то палитра по умолчанию parula.

colormap default

Figure contains an axes. The axes contains an object of type surface.

Начиная с R2019b, можно отобразить плиточное размещение графиков с помощью tiledlayout и nexttile функций. Вызовите tiledlayout функция для создания мозаичного графика размещения 2 на 1. Вызовите nexttile функция для создания объектов осей ax1 и ax2. Задайте разную палитру для каждой оси путем передачи объекта осей в colormap функция. В верхних осях создайте объемную поверхностную диаграмму с помощью spring палитра. В нижних осях создайте объемную поверхностную диаграмму с помощью winter палитра.

tiledlayout(2,1)
ax1 = nexttile;
surf(peaks)
colormap(ax1,spring)

ax2 = nexttile; 
surf(peaks)
colormap(ax2,winter)

Figure contains 2 axes. Axes 1 contains an object of type surface. Axes 2 contains an object of type surface.

Укажите количество цветов, используемых в палитре путем передачи целого числа в качестве входного параметра во встроенную палитру. Используйте пять цветов из палитры parula.

mesh(peaks)
colormap(parula(5))

Figure contains an axes. The axes contains an object of type surface.

Создайте пользовательскую палитру путем определения трехколоночной матрицы значений от 0,0 до 1,0. Каждая строка определяет триплет RGB с тремя элементами. Первый столбец задает красную интенсивность. Второй столбец задает интенсивность зеленого цвета. Третий столбец определяет интенсивность синего цвета.

Используйте палитру синих значений путем установки первых двух столбцов в нули.

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)

Figure contains an axes. The axes contains an object of type surface.

Создайте объемную поверхностную диаграмму peaks и задайте палитру.

mesh(peaks)
colormap(autumn(5))

Figure contains an axes. The axes contains an object of type surface.

Верните трехколоночную матрицу значений, которые определяют цвета, используемые на графике. Каждая строка является значением цвета триплета RGB, которое задает один цвет палитры.

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

Верните значения палитры для определенных осей, передав объект осей в colormap функция.

Создайте плиточное размещение из двух графиков с помощью tiledlayout и nexttile функции, которые являются новыми функциями, начиная с R2019b. Вызовите tiledlayout функция для создания мозаичного графика размещения 2 на 1. Вызовите nexttile функция для создания объектов осей ax1 и ax2. Затем отобразите две заполненные контурные графики с различными палитрами.

tiledlayout(2,1)
ax1 = nexttile;
contourf(peaks)
colormap(ax1,hot(8))

ax2 = nexttile;
contourf(peaks)
colormap(ax2,pink)

Figure contains 2 axes. Axes 1 contains an object of type contour. Axes 2 contains an object of type contour.

Верните значения палитры, используемые на верхнем графике, передав ax1 на colormap функция. Каждая строка является значением цвета триплета RGB, которое задает один цвет палитры.

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 набор данных, который возвращает изображение X и связанные с ним map палитры. Отобразите X использование image и установите палитру равной map.

load spine
image(X)
colormap(map)

Figure contains an axes. The axes contains an object of type image.

Входные параметры

свернуть все

Палитра для новой цветовой схемы, заданная как имя палитры, трехколоночная матрица триплетов RGB или 'default'. Имя палитры задает предопределенную палитру с таким же количеством цветов, как и текущая палитра. Трехколоночная матрица триплетов RGB задает пользовательскую палитру. Можно создать матрицу самостоятельно, или вызвать одну из предопределенных функций палитры, чтобы создать матрицу. Для примера, colormap(parula(10)) устанавливает палитру текущей фигуры на выбор из 10 цветов parula палитра.

Значение 'default' устанавливает палитру на палитру по умолчанию для целевого объекта.

Имя палитры

В следующей таблице перечислены предопределенные палитры.

Имя палитрыШкала цвета
parula

turbo

hsv

hot

cool

spring

summer

autumn

winter

gray

bone

copper

pink

jet

lines

colorcube

prism

flag

white

Трехколоночная матрица

Чтобы создать пользовательскую палитру, задайте map как трехколоночная матрица триплетов RGB, где каждая строка задает один цвет. Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность можно double или single значения в области значений [0, 1], или их можно uint8 значения в области значений [0, 255]. Для примера эта матрица задает палитру, содержащую пять цветов.

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];

В этой таблице перечислены значения триплетов RGB для простых цветов.

Цветdouble или single Триплет RGBuint8 Триплет RGB
желтый[1 1 0][255 255 0]
пурпурный[1 0 1][255 0 255]
голубой[0 1 1][0 255 255]
красный[1 0 0][255 0 0]
зеленый[0 1 0][0 255 0]
синий[0 0 1][0 0 255]
белый[1 1 1][255 255 255]
черный[0 0 0][0 0 0]

Типы данных: char | double | single | uint8

Цель, заданная как одно из следующих значений:

  • Figure объект. Палитра рисунка влияет на графики для всех осей на рисунке.

  • Axes объект, PolarAxes объект, или GeographicAxes объект. Вы можете задать уникальную палитру для различных осей в рисунке.

  • Графический объект, который имеет Colormap свойство. Например, вы можете изменить или запросить палитру для HeatmapChart объект.

Выходные аргументы

свернуть все

Значения палитры, возвращенные как трехколоночная матрица триплетов RGB. Каждая строка матрицы задает один триплет RGB, который задает один цвет палитры. Значения находятся в области значений [0, 1].

Подробнее о

свернуть все

Что такое Палитра?

Палитра - это матрица значений, которая задает цвета для графических объектов, таких как поверхность, изображение и патч-объекты. MATLAB® рисует объекты путем сопоставления значений данных с цветами в палитре.

Палитры могут быть любой длины, но должны быть тремя столбцами в ширину. Каждая строка в матрице задает один цвет с помощью триплета RGB. Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Как правило, интенсивность double или single значения в области значений [0, 1]. Значение 0 указывает на отсутствие цвета и значения 1 указывает на полную интенсивность. Например, эта команда создает палитру, которая имеет пять цветов: черный, красный, зеленый, синий и белый.

mymap = [0 0 0
    1 0 0
    0 1 0
    0 0 1
    1 1 1];

Чтобы изменить цветовую схему визуализации, вызовите colormap функция для изменения палитры содержащих осей или рисунка. Например, следующие команды создают объемную поверхностную диаграмму и устанавливают палитру рисунка равной mymap.

surf(peaks)
colormap(mymap)

Совет

  • Чтобы контролировать пределы палитры и то, как эти лимиты относятся к области значений ваших данных, используйте caxis функция.

Вопросы совместимости

расширить все

Поведение изменено в R2020b

Поведение изменено в R2018a

Поведение изменено в R2014b

Представлено до R2006a