- https://de.mathworks.com/matlabcentral/answers/203697-logarithmic-scale-for-colorbar
- https://de.mathworks.com/matlabcentral/answers/100066-how-do-i-create-a-logarithmic-scale-colormap-or-colorbar
- https://de.mathworks.com/matlabcentral/answers/393174-how-can-i-make-a-logarithmic-color-plot-and-colorbar
how to change the scale of an colour bar?
9 views (last 30 days)
Show older comments
Hello, My plot range with variation from 0 to 3500, so I want to use an log scale colour bar instead of normal colour bar scale, so that I can show all the variations. please give some suggestion to change the colour scale of the colorbar into an log scale.
0 Comments
Answers (1)
Robert U
on 9 Aug 2018
Edited: Robert U
on 9 Aug 2018
Hi Puspa patra,
Depending on Matlab version, you can go with different approaches. Known from older versions (prior 2018a):
% Create testdata
Data=magic(100);
% Define color levels to create
nLvl = 9;
% get min and max values of Data
minData = min(min(Data));
maxData = max(max(Data));
% define colorbar values on log scale
c = logspace(log10(minData),log10(maxData),nLvl);
% plot data in log-scale according to defined log scale values 'c'
contourf(log(Data),log(c));
% Change colormap to "bone"
colormap(bone);
% define color axis scaling according to 'c'
caxis(log([c(1) c(end)]));
% open colorbar
colorbar('YTick',log(c),'YTickLabel',c);
Kind regards,
Robert
0 Comments
See Also
Categories
Find more on Colormaps in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!