how to change the scale of an colour bar?

29 ビュー (過去 30 日間)
Puspa patra
Puspa patra 2018 年 8 月 9 日
編集済み: Robert U 2018 年 8 月 9 日
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.

回答 (1 件)

Robert U
Robert U 2018 年 8 月 9 日
編集済み: Robert U 2018 年 8 月 9 日
Hi Puspa patra,
I google'd it for you and found:
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

カテゴリ

Help Center および File ExchangeColormaps についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by