カラーマップの任意の範囲の値の色を指定したい

34 ビュー (過去 30 日間)
Takanori Aihara
Takanori Aihara 2021 年 12 月 17 日
回答済み: Atsushi Ueno 2021 年 12 月 17 日
カラーマップ作成後のカラーを数値別に指定したいです。
例えば、0~20は青、20~50は緑、50~100は赤
のように値範囲、色も任意で決めたいです。
具体的な質問になっているか少々心配ですがよろしくお願いします。

採用された回答

Atsushi Ueno
Atsushi Ueno 2021 年 12 月 17 日
>カラーマップ作成後のカラーを数値別に指定、値範囲・色共に任意、例:0~20は青、20~50は緑、50~100は赤、
質問の文言通りに受けると下記の様になります。
grayImage = imread('moon.tif');
imshow(grayImage);
colorMap = zeros(10,3); % 真っ黒に初期化
colorMap(6:10,1) = 1; % 50~100は赤
colorMap(3:5,2) = 1; % 20~50は緑
colorMap(1:2,3) = 1; % 0~20は青
colorMap'
ans = 3×10
0 0 0 0 0 1 1 1 1 1 0 0 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0
colormap(colorMap);
colorbar;
caxis([0 100]); % grayImageは0-255の値域なので、0-100にカラーマップを割り当てると101-255も全部赤になる
GUIで直感的に操作するのも良いと思います。

その他の回答 (0 件)

カテゴリ

Help Center および File Exchangeカラーマップ についてさらに検索

製品


リリース

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!