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

9 Ansichten (letzte 30 Tage)
Saeed Mohammadian
Saeed Mohammadian am 5 Apr. 2019
Beantwortet: DGM am 28 Jan. 2022
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

Antworten (2)

KSSV
KSSV am 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 am 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

Kategorien

Mehr zu Orange finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by