В этом примере показано, как использовать график географической плотности для просмотра плотности размещения сотовой башни в Калифорнии.
Загрузка данных размещения сотовой башни
Загрузите таблицу данных размещения сотовой вышки в рабочую область и просмотрите первые несколько строк. Таблица включает поля, которые идентифицируют местоположение сотовой башни по широте и долготе, и идентифицируют тип башни.
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'))
The AlphaScale
свойство на географических осях может также использоваться для изменения прозрачности. Это свойство особенно полезно при попытке показать, где найдена любая плотность, а не выделять наиболее плотные области.
figure dp = geodensityplot(cellularTowers.Latitude, cellularTowers.Longitude)
dp = DensityPlot with properties: FaceColor: [0 0.4470 0.7410] FaceAlpha: 'interp' LatitudeData: [1×1193 double] LongitudeData: [1×1193 double] WeightData: [1×0 double] Radius: 1.8291e+04 Show all properties
gx = gca
gx = GeographicAxes with properties: Basemap: 'streets-light' 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