How to limit the colorbar range in using image function ??

36 Ansichten (letzte 30 Tage)
제 허
제 허 am 30 Jun. 2021
Kommentiert: 제 허 am 1 Jul. 2021
hello
I want to limit the colorbar range in using image function.
caxis([0 10]) comment can limit the range other function (i.e mesh), but can not work at image function.
how I limit the colorbar range??
thank you.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 30 Jun. 2021
caxis works fine with image()
figure
img = imread('cameraman.tif');
image(img)
colormap(hsv)
caxis([0 10])
colorbar
But remember that colorbar() does not reflect RGB objects
figure
img = imread('flamingos.jpg');
image(img)
colormap(hsv)
caxis([0 10])
colorbar
  3 Kommentare
Walter Roberson
Walter Roberson am 30 Jun. 2021
I see what you mean; caxis() is not changing the colorbar() limit
Fortunately you can pass in the limits in the colorbar() call.
[R, TH] = ndgrid(complex(1:11, -5:5), linspace(0,2*pi));
[X, Y] = pol2cart(TH, R);
Z = X.^2 - 3.*X.*Y + Y;
figure
surf(real(X), real(Y), real(Z), 'edgecolor', 'none')
figure
surf(imag(X), imag(Y), imag(Z), 'edgecolor', 'none')
figure
RZ = real(Z);
image(RZ)
cb = colorbar('limits', [-50 50]);
cb
cb =
ColorBar with properties: Location: 'eastoutside' Limits: [-50 50] FontSize: 9 Position: [0.8311 0.1109 0.0381 0.8152] Units: 'normalized' Show all properties
제 허
제 허 am 1 Jul. 2021
Thank you for your answer

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by