Azzera filtri
Azzera filtri

Custom colour bar, excluding the Blue from RGB.

4 visualizzazioni (ultimi 30 giorni)
I made a custom colour bar where 100 fell exactly at green and 200 at red. Anything from 0 to 100 along with their colours in insignificant and I'd prefer they do not show up in the colour bar. That being said, I would specifically like to have the colour bar such that it starts at the lowest (green) at 100 and ends at the highest (red) at 200.
untitled.jpg
I used the following code for the image.
figure()
A = [200 200 200 200 200; 200 200 200 200 200; 200 200 100 200 200; 200 200 200 200 200; 200 200 200 200 200];
Percent_matrix = flipud (A);
Percent_Interp = imresize(Percent_matrix,200,'bilinear');
pcolor(Percent_Interp)
shading interp
caxis([0 200])
load CustomColourMap
colormap( CustomColourMap );
colorbar();

Risposta accettata

Star Strider
Star Strider il 16 Gen 2020
Modificato: Star Strider il 16 Gen 2020
Define ‘CustomColourMap’ as:
CustomColourMap = @(x) [linspace(0,1,x).' linspace(1,0,x).' zeros(x,1)];
then to use it:
CustomColourMap = @(x) [linspace(0,1,x).' linspace(1,0,x).' zeros(x,1)];
figure()
A = [200 200 200 200 200; 200 200 200 200 200; 200 200 100 200 200; 200 200 200 200 200; 200 200 200 200 200];
Percent_matrix = flipud (A);
Percent_Interp = imresize(Percent_matrix,200,'bilinear');
pcolor(Percent_Interp)
shading interp
caxis([100 200])
% load CustomColourMap
colormap( CustomColourMap(64) );
colorbar();
produces:
Custom colour bar, excluding the Blue from RGB - 2020 01 16.png
EDIT —
Corrected typographical error.
  2 Commenti
Jigsaw
Jigsaw il 17 Gen 2020
The result is perfectly the way i wanted it. Nice of you to display the final image after using the updated code.
Thank you.
Cheers!
Star Strider
Star Strider il 17 Gen 2020
As always, my pleasure!
Thank you! The plot is the intent of your Question and my Answer, so posting it is necessary!

Accedi per commentare.

Più risposte (1)

Stijn Haenen
Stijn Haenen il 16 Gen 2020
Maybe you can try this:
h=figure();
A = [200 200 200 200 200; 200 200 200 200 200; 200 200 100 200 200; 200 200 200 200 200; 200 200 200 200 200];
Percent_matrix = flipud (A);
Percent_Interp = imresize(Percent_matrix,200,'bilinear');
pcolor(Percent_Interp)
shading interp
caxis([0 200])
colorbar();
h.Children(1).Limits=[100 200];
set(h,'Colormap',[Colormap_data]) % colormap data should be RBG codes: [[0.2422,0.1504,0.66030;0.2444,0.1534,0.6728;0.2464,0.1569,0.6847; ..... ]

Categorie

Scopri di più su Colormaps in Help Center e File Exchange

Prodotti


Release

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by