How can I make a logarithmic color plot and colorbar
73 ビュー (過去 30 日間)
古いコメントを表示
When working in Matlab 2014a I had a work-around to make logarithmic colorbars for my pcolor plots, making figures such as below.

After an institutional change to Matlab 2018a this workaround is completely broken, and it seems logarithmic colorbars with minor tickmarks are still not natively supported despite being a common type of plot. Is there any method to create this type of plot and colorbar in the newer releases?
0 件のコメント
回答 (2 件)
Jeffrey Lestz
2018 年 8 月 10 日
I have version 2018a, and the following also works for me:
set(gca,'colorscale','log')
3 件のコメント
Walter Roberson
2018 年 4 月 6 日
cb = colorbar();
cb.Ruler.Scale = 'log';
cb.Ruler.MinorTick = 'on';
6 件のコメント
Jonah Pearl
2018 年 11 月 20 日
Thank you, this works! @Antoine, your error is because you have some data equal to 0 in the Z-direction, and since log(0) is -Inf, the transform fails. Adding a very small number like 0.0001 to your Z-data should fix this. Or you could add in an if statement, if data == 0, add 0.0001.
Walter Roberson
2018 年 11 月 21 日
Jonah, the error message Antoine shows depends on version . It was a limitation between r2014b and r2017b that did not depend upon data being 0.
参考
カテゴリ
Help Center および File Exchange で Colormaps についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!