Imagesc change "background" color
32 views (last 30 days)
Show older comments
Hello guys,
I have a simple question, how can I set "background" color to white? Or how can I set a color of points with a specific value - for example all ones will be white.
Best regards
a = rand(50);
b = zeros(10,50);
c = [b; a; b];
imagesc(c)
colormap jet
0 Comments
Answers (2)
Image Analyst
on 30 Mar 2019
Use a different colormap
cmap = jet(256);
% Make lowest one black
cmap(1,:) = 0;
colormap(cmap);
0 Comments
DGM
on 24 Aug 2023
If you're using MIMT, this becomes simple. Just construct the image in whole and display it. Don't try to deal with conditionally colormapping different parts of an image.
% inputs
A = rand(50); % a 2D array on any arbitrary scale
padw = [10 0]; % [y x]
padcolor = [0.7 0 1]; % any I/IA/RGB/RGBA color tuple
CT = parula(256); % a colormap
% create pseudocolor image in RGB
outpict = gray2pcolor(A,CT,'cdscale'); % same quantization as imagesc()
% add custom colored border/padding
outpict = addborder(outpict,padw,padcolor);
% display it
image(outpict)
0 Comments
See Also
Categories
Find more on Colormaps in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!