How can I make a logarithmic color plot and colorbar
92 次查看(过去 30 天)
显示 更早的评论
When working in Matlab 2014a I had a work-around to make logarithmic colorbars for my pcolor plots, making figures such as below.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/171890/image.png)
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 中查找有关 Purple 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!