Этот пример показывает, как использовать географический график плотности просмотреть плотность сотового размещения башни в Калифорнии.
Загрузите сотовые данные о размещении башни
Загрузите таблицу сотовых данных о размещении башни в рабочую область и просмотрите первые несколько строк. Таблица включает поля, которые идентифицируют местоположение сотовой башни широтой и долготой, и идентифицируют тип башни.
load cellularTowers
head(cellularTowers)
ans=8×10 table
ID Latitude Longitude City County State NEPA SUPSTRUC ALLSTRUC STRUCTYPE
____ ________ _________ _________________ ___________ _____ ____ ________ ________ _________
2166 37.119 -121.83 "MORGAN HILL" SANTA CLARA CA N 46.9 50.6 MAST
2167 37.346 -121.63 "SAN JOSE" SANTA CLARA CA N 2.4 2.4 PIPE
2168 37.158 -121.98 "REDWOOD ESTATES" SANTA CLARA CA N 24.7 25.3 TOWER
2169 37.366 -122.14 "LOS ALTOS HILLS" SANTA CLARA CA N 18.3 19.8 POLE
2170 37.402 -122.18 "STANFORD" SANTA CLARA CA N 6.4 6.4 POLE
2171 37.258 -122.03 "SARATOGA" SANTA CLARA CA N 10.1 11.9 B
2172 37.434 -121.89 "MILPITAS" SANTA CLARA CA N 17.1 17.7 POLE
2173 37.446 -121.89 "MILPITAS" SANTA CLARA CA N 19.5 19.5 B
Просмотрите данные как географический график поля точек
Отобразите сотовые данные о башне на графике с помощью функции geoscatter
. В графике существуют ясные области вокруг Сан-Франциско, где количество башен является слишком плотным, чтобы быть представленным с помощью графика рассеивания.
geoscatter(cellularTowers.Latitude, cellularTowers.Longitude, '.') text(gca,37.75,-122.75,'San Francisco','HorizontalAlignment','right')
Просмотрите данные как географический график плотности
Район плотной застройки башен в области Сан-Франциско можно показать с помощью geodensityplot
.
geodensityplot(cellularTowers.Latitude, cellularTowers.Longitude) text(gca,37.75,-122.75,'San Francisco','HorizontalAlignment','right')
Создайте график плотности, задающий радиус
Когда вы создаете географический график плотности, по умолчанию, график плотности автоматически выбирает значение радиуса, с помощью данных о широте и долготе. Используйте свойство Radius
вручную выбрать радиус в метрах.
radiusInMeters = 50e3; % 50 km geodensityplot(cellularTowers.Latitude, cellularTowers.Longitude,'Radius',radiusInMeters)
Используйте свойства осей настроить прозрачность
Когда установлено в 'interp'
, свойства FaceAlpha
и FaceColor
графика плотности используют свойства Alphamap
и Colormap
базовых географических осей, соответственно. Изменение Alphamap
изменяет отображение значений плотности к интенсивности цвета.
geodensityplot(cellularTowers.Latitude, cellularTowers.Longitude)
alphamap(normalize((1:64).^0.5,'range'))
Свойство AlphaScale
на географических осях может также использоваться, чтобы изменить прозрачность. Это свойство особенно полезно при попытке показать, где любая плотность найдена, вместо того, чтобы подсветить большинство районов плотной застройки.
figure dp = geodensityplot(cellularTowers.Latitude, cellularTowers.Longitude)
dp = DensityPlot with properties: FaceColor: [0 0.4470 0.7410] FaceAlpha: 'interp' LatitudeData: [1x1193 double] LongitudeData: [1x1193 double] WeightData: [1x0 double] Radius: 1.8291e+04 Show all properties
gx = gca
gx = GeographicAxes with properties: Basemap: 'darkwater' Position: [0.1300 0.1100 0.7750 0.8150] Units: 'normalized' Show all properties
gx.AlphaScale = 'log';
Используйте свойства объектов DensityPlot, чтобы задать цвет
Добавьте цвет.
dp.FaceColor = 'interp'; colormap hot
Свойства DensityPlot | geodensityplot