Volshow contrast or scaling the colormap
21 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Brittney Gorman
am 14 Okt. 2020
Kommentiert: Brittney Gorman
am 29 Okt. 2020
Is there a way to scale the colormap in volshow()? Similar to using 'caxis', [min max] for image()?
0 Kommentare
Akzeptierte Antwort
Tim
am 29 Okt. 2020
Bearbeitet: Tim
am 29 Okt. 2020
% Example volume
imcube = bsxfun(@power, rand(30, 30, 100),...
permute(linspace(0, 8, 100), [3, 1, 2])).*...
permute(linspace(1, 0, 100), [3, 1, 2]);
% Pick your color map
cmp = jet;
% Generate your volume object
V = volshow(imcube,...
'Renderer', 'MaximumIntensityProjection',...
'Colormap', cmp,...
'BackgroundColor', [0, 0, 0]);
% Set your new color axis. This does the same thing as caxis normally
% would.
% % % % % % % % % % % % CAXIS EQUIVALENT % % % % % % % % % %
VAxis = [0.2, 1.5];
% % % % % % % % % % % % % % % % % % % % % % % % % % % % % %
% Generate new scale
newscale = linspace(min(imcube(:)) - min(VAxis(:)),...
max(imcube(:)) - min(VAxis(:)), size(cmp, 1))/diff(VAxis);
newscale(newscale < 0) = 0;
newscale(newscale > 1) = 1;
% Update colormap in volshow
V.Colormap = interp1(linspace(0, 1, size(cmp, 1)), cmp, newscale);
Weitere Antworten (1)
Pratyush Roy
am 27 Okt. 2020
Hi,
Assuming that the colormap generation is being a bit difficult, one can use the "ColorMap" property of the volshow() function to manually generate a colormap.
The following documentation link might be of further help:
0 Kommentare
Siehe auch
Kategorien
Mehr zu Basic Display finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!