Is it possible to eliminate a color range from certain colormap?

21 views (last 30 days)
I am using colormap hsv in my plots, but I do not want the upper red color in the colorbar because it can be confusing with the lower red. Can I manually edit this color range?
Thanks
Untitled.png

Answers (2)

KSSV
KSSV on 5 Apr 2019
Z = peaks(100) ;
figure(1)
pcolor(Z)
cmap = hsv ;
colormap(cmap)
% Remove red
idx = cmap(:,1)==1 ;
cmap(idx,:) = [] ;
figure
pcolor(Z)
colormap(cmap)

DGM
DGM on 28 Jan 2022
Old, I know ...
If you want to break the circularity of hsv(), you can do so by doing the interpolation yourself:
z = peaks(100);
ncolors = 64;
cm = hsv(6); % the minimal set of primaries and secondaries
cm = interp1(1:6,cm,linspace(1,6,ncolors));
imagesc(z);
colormap(cm)
colorbar

Categories

Find more on Colormaps in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!