我想把点的颜色改成蓝色怎么做?

时间:2016-03-21 15:32:57

标签: matlab

点颜色保持白色,我想将点的颜色更改为蓝色。

function dotted()

    video = VideoWriter('Dotted-Line.avi'); 
    video.FrameRate = 100;
    video.Quality = 100;
    open(video);

    for r = 1:460
        I = zeros(500); 
        I(r+20,8:16:500) = 1;
        d = bwdist(I);
        imshow(d<2.5,'Border','tight');
        frame = getframe;
        writeVideo(video,frame);
    end

    close(video);
end

1 个答案:

答案 0 :(得分:2)

您想要更改图形的colormap(或R2014b及更高版本中的轴)。默认情况下,imshow使用灰度色彩图,这将使您的二进制图像变为黑白。

您可以改为定义两个值的自定义色彩映射(黑色表示0,蓝色表示1)。

cmap = [0 0 0;   % Black
        0 0 1];  % Blue

imshow(d < 2.5);

colormap(gca, cmap)

enter image description here

或者,你可以specify the colormap directly to imshow。您必须在二进制数据中添加一个,因为它需要是一个索引图像(从1开始)。

imshow((d < 2.5) + 1, cmap)