指定的颜色信息显示方法

0 引言

有关颜色映射表,对自主设置图像或曲线显示效果,添加数据信息到颜色等,有重要作用。其本质还是根据要求构造出颜色映射表,然后对应该表显示出合适的颜色。

1 内容

对矩阵A

A = [2 2 0 0 0 2 2 2 2 2

    2 2 2 0 0 0 2 0 0 2

    0 2 2 2 2 2 2 0 0 2

    2 2 2 0 2 0 2 2 2 0

    0 2 2 2 0 9 0 2 2 2

    0 0 0 2 0 0 2 2 2 2

    0 0 5 0 2 0 0 0 2 2

    0 4 0 0 2 0 2 0 2 2

    0 0 3 0 2 2 2 2 2 2

    1 1 0 2 2 2 2 2 2 0];

要求:将所有的0用白色表示,所有的跨越集团(左右或上下连通),此处为29,用黑色表示,其他的用colorbar对应的颜色。

代码

% By lyqmath

% DLUT School of Mathematical Sciences

% BLOGhttp://blog.csdn.net/lyqmath

clc; clear all; close all;

A = [2 2 0 0 0 2 2 2 2 2

    2 2 2 0 0 0 2 0 0 2

    0 2 2 2 2 2 2 0 0 2

    2 2 2 0 2 0 2 2 2 0

    0 2 2 2 0 9 0 2 2 2

    0 0 0 2 0 0 2 2 2 2

    0 0 5 0 2 0 0 0 2 2

    0 4 0 0 2 0 2 0 2 2

    0 0 3 0 2 2 2 2 2 2

    1 1 0 2 2 2 2 2 2 0];

figure;

imagesc(A); % 显示矩阵A

% 借助jet颜色表构造

map1 = colormap('jet');

A1 = unique(A(:)); ind = max(A1(:));

map2 = map1(round(linspace(1, size(map1, 1), ind)), :);

map2(A1(1)+1, :) = [1 1 1];

map2(A1(3)+1, :) = [0 0 0];

map2(A1(7)+1, :) = [0 0 0];

colormap(map2);

colorbar;

hold on;

for i = 1 : size(A, 1)

    for j = 1 : size(A, 2)

        % 标注

        text(j, i, num2str(A(i, j)), 'color', 'r');

    end

end

结果

 

 

2 总结

类似的,可以应用于很多相关问题中,比如使用三维曲面+颜色来表示四维数据等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值