validatecolor
カラー値の検証
説明
例
2 つのカラーについての符号なし 16 ビットの値を含む 2 行 3 列の行列を作成します。カラーを検証します。
c = uint16([32768 0 65535; 0 65535 0]);
RGB = validatecolor(c,'multiple')RGB = 2×3
0.5000 0 1.0000
0 1.0000 0
3 つの色名を検証します。
RGB = validatecolor({'red','green','blue'},'multiple')RGB = 3×3
1 0 0
0 1 0
0 0 1
3 つの 16 進数カラー コードを検証します。
RGB = validatecolor({'#8000FF','#0F0','#FF9900'},'multiple')RGB = 3×3
0.5020 0 1.0000
0 1.0000 0
1.0000 0.6000 0
y 座標の配列としての y と、ラインの色としての linecolors を受け取る plotlines という関数を定義します。関数は y に色付きの値のライン プロットを作成します。
関数内で、関数 validatecolor を呼び出して linecolors の有効性をチェックします。'multiple' オプションを指定して、ユーザーに 1 つ以上の色の指定を許可します。色が無効である場合、validatecolor はエラー メッセージを表示します。それ以外の場合は、等価の RGB 3 成分配列を返します。次に 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');y 座標の配列としての y と、オプションのカラー引数としての c を受け取る plotminmax という関数を定義します。関数は y の最小値と最大値で、破線の水平線でライン プロットを作成します。破線は既定で黒色ですが、ユーザーが c 引数を使用して色をカスタマイズできます。
arguments ブロック内で、関数 validatecolor を使用して c の有効性をチェックします。既定の色として '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
赤色の 16 進数カラー コードを指定して関数 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.入力引数
検証する色の値。次のいずれかとして指定します。
singleまたはdoubleの、[0,1]の範囲の値の 1 行 3 列のベクトル。値は、それぞれ色の赤色、緑色、青色の成分の強度に対応します。1 行 3 列の符号なし整数のベクトル。整数は、それぞれ色の赤色、緑色、青色の成分の強度に対応します。
singleまたはdoubleの値、または符号なし整数の m 行 3 列の行列。行列のそれぞれの行は、色の赤色、緑色、青色の成分の強度を含んでいます。'red'のような色名を指定する文字ベクトル、または'#F92B30'のような 16 進数カラー コード。文字ベクトルまたは string 配列の 1 次元 cell 配列。配列の各要素は
'red'のような色名、または'#F92B30'のような 16 進数カラー コードです。
次の表に、有効な色名を、等価の RGB 3 成分と 16 進数カラー コードとともに示します。
| 色名 | 省略名 | RGB 3 成分 | 16 進数カラー コード | 外観 |
|---|---|---|---|---|
"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
サイズ オプション。以下のいずれかとして指定します。
'one'— 1 つの色の値のみを受け入れます。それ以外の場合はエラーを返します。'multiple'— ゼロ個以上の色の値を受け入れます。
例: RGB = validatecolor(["red" "green"],'multiple')
出力引数
等価な RGB 値。単一の RGB 3 成分または m 行 3 列の行列内の複数の RGB 3 成分として返されます。RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は [0,1] の範囲になります。たとえば、[1 0 0] は赤色で [0.5 0.5 0.5] グレーの中間色です。
バージョン履歴
R2020b で導入
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)







