Проверьте значения цветов
проверяет одно значение цвета. Если значение цвета верно, RGB
= validatecolor(colors
)validatecolor
возвращает эквивалентный триплет RGB для цвета. Один из критериев validatecolor
проверяет, задан ли один или несколько цветов. Для этого синтаксиса указание нескольких цветов недопустимо и приводит к ошибке.
Проверьте беззнаковое 8-битное значение цвета.
RGB = validatecolor(uint8([128 0 255]))
RGB = 1×3
0.5020 0 1.0000
Создайте матрицу 2 на 3, содержащую беззнаковые 16-битные значения для двух цветов. Затем проверьте цвета.
c = uint16([32768 0 65535; 0 65535 0]);
RGB = validatecolor(c,'multiple')
RGB = 2×3
0.5000 0 1.0000
0 1.0000 0
Проверьте три названий цвета.
RGB = validatecolor({'red','green','blue'},'multiple')
RGB = 3×3
1 0 0
0 1 0
0 0 1
Проверьте три шестнадцатеричных кода цвета.
RGB = validatecolor({'#8000FF','#0F0','#FF9900'},'multiple')
RGB = 3×3
0.5020 0 1.0000
0 1.0000 0
1.0000 0.6000 0
Задайте функцию, называемую plotlines
который принимает y
как массив y -кординатов и linecolors
как цвета для линий. Функция создает цветной линейный график значений в y
.
В рамках функции проверяйте валидность linecolors
при вызове validatecolor
функция. Задайте 'multiple'
опция, позволяющий пользователям задавать один или несколько цветов. Если цвета недопустимы, validatecolor
отображает сообщение об ошибке. В противном случае возвращается эквивалентный массив триплетов RGB. Далее используйте размер RGB
массив для определения распределения цветов между линиями.
Сохраните функцию следующим plotlines.m
в папке с возможностью записи.
function plotlines(y,linecolors) % Plot colored lines. p = plot(y); % Check for valid color values RGB = validatecolor(linecolors,'multiple'); % Use RGB array in a calculation ncolors = size(RGB,1); nlines = numel(p); nupdate = min(ncolors,nlines); for n = 1:nupdate p(n).Color = RGB(n,:); end
Вызовите plotlines
функция для построения красных синих и чёрных линий.
plotlines([0 1 2; 1 2 3],{'red','blue','black'})
Теперь вызовите функцию с недопустимым значением цвета. В этом случае задайте скалярное значение вместо массива m на 3. MATLAB® отображает ошибку, возвращенную validatecolor
функция.
plotlines([0 1 2; 1 2 3],255)
Error using validatecolor (line 50)
Specify colors as a three-column matrix.
Error in plotlines (line 6)
RGB = validatecolor(linecolors,'multiple');
Задайте функцию, называемую plotminmax
который принимает y
как массив y -кординатов и c
как необязательный цветовой аргумент. Функция создает линейный график с штриховыми горизонтальными линиями при минимальных и максимальных значениях y
. Штриховые линии по умолчанию черные, но пользователь может настроить цвет с помощью c
аргумент.
В пределах arguments
блокируйте, проверяйте валидность c
с validatecolor
функция. Определите 'black'
как цвет по умолчанию, так что c
может быть необязательным входом. Затем постройте график y
, и отобразить горизонтальные линии на минимальном и максимальном значениях используя цвет c
.
Сохраните функцию следующим plotminmax.m
в папке с возможностью записи.
function plotminmax(y,c) % Plot lines with horizontal lines indicating min/max of y. arguments y {mustBeNumeric, mustBeNonempty} c {validatecolor} = 'black' end plot(y) % Add min and max lines ymin = min(y,[],'all'); ymax = max(y, [],'all'); yline(ymin,'--','Color',c) yline(ymax,'--','Color',c) end
Вызовите plotminmax
функция с шестнадцатеричным цветовым кодом для красного цвета. Координаты графиков функций и отображений горизонтальные линии с заданным цветом.
plotminmax([8.4 2.5 7 3 9.2],'#FF0000')
Вызовите функцию с недопустимым значением цвета. В этом случае задайте недопустимое название цвета. MATLAB отображает ошибку, возвращенную validatecolor
функция.
plotminmax([8.4 2.5 7 3 9.2],'chartreuse')
Error using plotminmax
Invalid argument at position 2. 'chartreuse' is not a valid
color specification. Valid names include: 'red', 'green',
'blue', 'cyan', 'magenta', 'yellow', 'black', and 'white'.
Valid hexadecimal color codes consist of '#' followed by three
or six hexadecimal digits.
colors
- Значения цветаЗначения цвета для проверки, заданные как одно из следующих:
Вектор 1 на 3 single
или double
значения в области значений [0,1]
, где значения соответствуют интенсивности красных, зеленых и синих компонентов цвета, соответственно.
Вектор беззнаковых целых чисел 1 на 3, где целые числа соответствуют интенсивности красных, зеленых и синих компонентов цвета, соответственно.
m-на-3 матрица single
или double
значения или беззнаковые целые числа, где каждая строка в матрице содержит интенсивность красных, зеленых и синих компонентов цвета.
Вектор символов, который задает название цвета, например 'red'
, или шестнадцатеричный цветовой код, такой как '#F92B30'
.
1-D массивы ячеек векторов символов или строковых массивов, где каждый элемент массива является либо таким названием цвета, как 'red'
, или шестнадцатеричный цветовой код, такой как '#F92B30'
.
В следующей таблице перечислены допустимые названия цвета с эквивалентными триплетами RGB и шестнадцатеричными цветовыми кодами.
Название цвета | Краткое имя | Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
---|---|---|---|---|
'red' | 'r' | [1 0 0] | '#FF0000' | |
'green' | 'g' | [0 1 0] | '#00FF00' | |
'blue' | 'b' | [0 0 1] | '#0000FF' | |
'cyan' | 'c' | [0 1 1] | '#00FFFF' | |
'magenta' | 'm' | [1 0 1] | '#FF00FF' | |
'yellow' | 'y' | [1 1 0] | '#FFFF00' | |
'black' | 'k' | [0 0 0] | '#000000' | |
'white' | 'w' | [1 1 1] | '#FFFFFF' |
Пример: RGB = validatecolor(uint8([255 0 0]))
Пример: RGB = validatecolor("#FF8800")
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| char
| string
sz
- Опция размера'one'
(по умолчанию) | 'multiple'
Опция размера, заданная как один из следующих опций:
'one'
- Примите только одно значение цвета. Возвращает ошибку в противном случае.
'multiple'
- Примите одно или несколько значений цвета.
Пример: RGB = validatecolor(["red" "green"],'multiple')
RGB
- значения RGBЭквивалентные значения RGB, возвращенные как один триплет RGB или несколько триплетов RGB в матрице m на 3. Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность находится в области значений [0,1]
. Для примера, [1 0 0]
красный, и [0.5 0.5 0.5]
является серым средним тоном.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.