Создайте карту Choropleth плотности населения

В этом примере показано, как создать choropleth карту плотности населения для шести состояний Новой Англии в году 2000.

Импортируйте Американские Государственные граничные многоугольники с низкой разрешающей способностью, установив пределы карты для области Новой Англии.

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

NEstates = shaperead('usastatelo', 'UseGeoCoords', true, ...
   'BoundingBox', [MapLonLimit' MapLatLimit']);

Настройте оси карты с проекцией, подходящей, чтобы отобразить состояния Новой Англии.

axesm('MapProjection', 'eqaconic', 'MapParallels', [],...
  'MapLatLimit', MapLatLimit, 'MapLonLimit', MapLonLimit,...
  'GLineStyle', '-')
geoshow(NEstates, 'DisplayType', 'polygon', 'FaceColor','green')

Figure contains an axes. The axes contains 8 objects of type patch.

Идентифицируйте максимальную плотность населения для состояний Новой Англии.

maxdensity = max([NEstates.PopDens2000])
maxdensity = 1.1345e+03

Создайте осеннюю палитру для шести состояний Новой Англии, и затем используйте flipud команда, чтобы инвертировать матрицу.

fall = flipud(autumn(numel(NEstates)));

Сделайте структуру спецификации символа, symbolspec, это присваивает осенний цвет каждому многоугольнику согласно плотности населения.

densityColors = makesymbolspec('Polygon', {'PopDens2000', ...
   [0 maxdensity], 'FaceColor', fall});

Отобразите карту.

geoshow(NEstates, 'DisplayType', 'polygon', ...
   'SymbolSpec', densityColors)
title ({'Population Density in New England in 2000', ...
   'in Persons per Square Mile'})

Figure contains an axes. The axes with title Population Density in New England in 2000 in Persons per Square Mile contains 16 objects of type patch.

Добавьте шкалу палитры. Можно также экспериментировать с другими палитрами.

caxis([0 maxdensity])
colormap(fall)
colorbar

Figure contains an axes. The axes with title Population Density in New England in 2000 in Persons per Square Mile contains 16 objects of type patch.

Для просмотра документации необходимо авторизоваться на сайте