How to plot a Map with 2 dimensional colorbar?
28 次查看(过去 30 天)
显示 更早的评论
Hi, I want to plot like this figure.
My question is how to get colorbar like this one, the shape of the figure( like this map) doesn`t matter( Now it`s a gobal spatial pattern, it could be anything else)
at each point on the map, I have 2 values, mapping to one color in the two dimensional colorbar.
3 个评论
Adam
2019-10-14
As mentioned, there is no functionality for a 2d colourbar in Matlab, but you can create your 2d image representing your 2d colourmap easily and just plot it using imagesc on its own axes that you can position wherever you want.
采纳的回答
darova
2019-10-14
Here is a way:
clc,clear
n = 100;
I = zeros(n,n,3);
h = linspace(0,1/6,n);
s = linspace(1,0,n/2);
[H,S] = meshgrid(h,s);
I(:,:,1) = [H+0.5; H];
I(:,:,2) = [S; flipud(S)];
I(:,:,3) = [S; flipud(S)]/2+0.5;
I1 = hsv2rgb(I);
imshow(I1)
更多回答(1 个)
Alaster Meehan
2019-10-14
I don't think Matlab has anything that can do this nativly, but I will follow just incase any has a better idea then me.
My thoughts...
Generate an image/matrix that is what you want you color bar to look like. Use the subplot function to plot your image/map and your colorbar image next to each other.
Cheers Alaster
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Orange 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!