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

12 vues (au cours des 30 derniers jours)
Saeed Mohammadian
Saeed Mohammadian le 5 Avr 2019
Réponse apportée : DGM le 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

Réponses (2)

KSSV
KSSV le 5 Avr 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 le 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

Catégories

En savoir plus sur Orange dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by