Matlab中的尖头色条?

时间:2014-02-07 11:11:39

标签: matlab colorbar

我正在尝试在Matlab中生成一个适合发布的图形,我需要一些颜色条的帮助。

我的数据范围从-20到30,但我希望颜色条聚焦在-15到15之间,每一端都有箭头来表示该范围之外的值。

我尝试使用类“pointyColorbar”(http://www.mathworks.co.uk/matlabcentral/answers/48773),但它不会产生所需的输出。理想情况下,我希望colorbar看起来像下面那个,但使用我的自定义色图。

任何人都可以帮我解决这个问题吗?对不起,如果我没有问过这个问题 - 我是新来的!

enter image description here

根据要求,下面是我目前对我的colorbar(cmap是我的自定义颜色图)所拥有的内容:

cmap=precipanomcolourmap(7,7)
colormap(cmap)
caxis([-20 30])
cb=colorbar('location','southoutside');
set(get(cb,'title'),'string','Average annual precipitation anomaly (%)','FontWeight','bold');
set(cb,'XTick',[-17.5 -15 -12.5 -10 -7.5 -5 -2.5 0 2.5 5 7.5 10 12.5 15 17.5]);
xlim(cb,[-17.5 17.5]);

这让我的数字低于我的数字,范围从-17.5到17.5。除此之外的值使用与+/- 15-17.5范围相同的颜色进行标记。

当我尝试使用pointyColorbar类时,我将cb=colorbar('location','southoutside');行替换为cb=pointyColorbar(15,-15,'location','southoutside')。我可能需要使用如何使用pointyColorbar类,但我不太了解代码,知道如何让它看起来我想要它。

1 个答案:

答案 0 :(得分:0)

关于这个问题,我认为你的答案就在本页的底部:

http://www.mathworks.com/matlabcentral/answers/48773

关于colorbar限制,我认为你正在寻找类似的东西:

set(gca,'CLim',[cLow,cHigh]);

在放弃彩条之前。

('cLow'和'cHigh'是你想要的彩色条限制。)

看看这个:http://www.mathworks.com/matlabcentral/newsreader/view_thread/163344