Проверьте значения цветов
проверяет одно значение цвета. Если значение цвета верно, 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.