微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

多边形地图中的边框颜色显示 MatLab

如何解决多边形地图中的边框颜色显示 MatLab

如何在 MatLab 的等值线图中更改多边形边界的颜色? (同时保持多边形内的颜色)。下面的可重现代码

      MapLatLimit = [41 48];
MapLonLimit = [-74 -66];

nestates = shaperead('usastatelo','UseGeoCoords',true,'BoundingBox',[MapLonLimit' MapLatLimit']);
datawithNaN = [30 20 30 NaN 40 50 NaN NaN];
% Here replace NaNs with a number (treat as category):
datawithNaN(isnan(datawithNaN)) = 0;
datawithNaN = num2cell(datawithNaN);

% Here I create a color map,using white for NaN (category = 0);
mycolormap = [  1 1 1;...
               .4 .1 .9;...
               .3 .2 .8;...
               .2 .3 .7;...
               .1 .4 .6];
[nestates.datawithNaN] =  deal(datawithNaN{:});
densityColors = makesymbolspec('polygon',{'datawithNaN',[0 50],'FaceColor',mycolormap});
mapshow(nestates,'displayType','polygon','SymbolSpec',densityColors)

解决方法

通过添加属性 'EdgeColor',您可以将颜色更改为任何颜色。在下面的示例中,我选择了红色 r。更多颜色选项:MATLAB Documentation: ColorSpec (Color Specification)。颜色也可以定义为数组形式的 RGB 三元组矩阵 [r g b]:

哪里,

r → 红色强度范围从 0 到 1。
g → 绿色强度范围从 0 到 1。
b → 蓝色强度范围从 0 到 1。

densityColors = makesymbolspec('Polygon',{'datawithNaN',[0 50],'FaceColor',mycolormap,'EdgeColor','r'});

Colouring Map Borders

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。