Put to white the plot space outside a geometric shape

1 visualizzazione (ultimi 30 giorni)
Dear all
I am using the attached colorbar to generate some plots, which looks like this:
As you can see, because the colorbar seems to not assign a plain white color to zeros, the background color outside the geometric shape has some residual color. How could I avoid this problem efficiently?

Risposta accettata

Mathieu NOE
Mathieu NOE il 29 Ago 2024
Modificato: Mathieu NOE il 29 Ago 2024
hello
have you checked that the colorbar is symetric around zero (to have white color correspind to zero exactly ? )
this requires to use caxis as in example below (the seond plot is "whiter" than the first one).
RdBu250cbrewer = readmatrix('RdBu_250_cbrewer2.txt');
Z = peaks(100) + 1 ;
% without caxis
figure(1),
imagesc(Z)
colormap(RdBu250cbrewer);
colorbar('vert')
% with caxis
figure(2),
zm = max(abs(Z),[],'all');
imagesc(Z)
colormap(RdBu250cbrewer);
caxis([-zm zm]) % force colors to be used symmetricaly so white correspond to zero
colorbar('vert')
  3 Commenti
Mathieu NOE
Mathieu NOE il 29 Ago 2024
there are lot's a colormap generators on Fex, for my fun I used this one :
her's the result obtained (code below)
% with redwhiteblue
% (Fex : https://fr.mathworks.com/matlabcentral/fileexchange/86932-red-white-blue-colormap)
figure(3)
imagesc(Z)
zmin = min(Z,[],'all');
zmax = max(Z,[],'all');
colormap(redwhiteblue(zmin, zmax));
colorbar;
DGM
DGM il 29 Ago 2024
I'll add that the RdBu map never reaches white in the center. It maxes out at [0.9686 0.9686 0.9686]. Since the given map is even length, it never actually includes this neutral color.

Accedi per commentare.

Più risposte (0)

Categorie

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

Community Treasure Hunt

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

Start Hunting!

Translated by