多边形 mapshow MatLab 中边框的颜色
Color of border in polygon mapshow 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'});
如何在 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'});