Этот пример показывает, как создать область значений различных карт с помощью mapshow
.
Отобразите географический массив структуры данных со строками, представляющими дороги. В файле форм 'concord_roads.shp', дорожные координаты были предварительно спроектированы к состоянию Материка Массачусетса Плоская система (в метрах), таким образом, файл форм импортируется в mapstruct (переменные 'дороги').
roads = shaperead('concord_roads.shp'); figure mapshow(roads); xlabel('easting in meters') ylabel('northing in meters')
Отобразите форму дорог и измените LineStyle.
figure mapshow('concord_roads.shp','LineStyle',':'); xlabel('easting in meters') ylabel('northing in meters')
Отобразите форму дорог и рендеринг с помощью SymbolSpec.
Чтобы узнать о наборе данных concord_roads.shp
, считайте его связанный файл метаданных concord_roads.txt
, который описывает атрибуты.
type concord_roads.txt
A shapefile data set for roads in part of Concord, Massachusetts, USA comprising the following files: concord_roads.dbf concord_roads.shp concord_roads.shx Source ------ Office of Geographic and Environmental Information (MassGIS), Commonwealth of Massachusetts Executive Office of Environmental Affairs (http://www.state.ma.us/mgis/) Coordinate system/projection ---------------------------- All data distributed by MassGIS are registered to the NAD83 datum, Massachusetts State Plane Mainland Zone coordinate system. Units are in meters. Data set construction --------------------- This data set was constructed by concatenating Massachusetts Highway Department road shapefiles for the Maynard and Concord USGS Quadrangles, from compressed files mrd97.exe and mrd104.exe. Features were selected with bounding boxes intersecting the following box: [206500 (min easting) 910500 (min northing) 211500 (max easting) 913500 (max northing)] The following attributes were retained: 'STREETNAME', 'RT_NUMBER', 'CLASS', 'ADMIN_TYPE', 'LENGTH' Attributes 'CLASS' and 'ADMIN_TYPE' contain numerical codes defined by MassGIS as follows: Road classes (from file mrdac.dbf) ---------------------------------- CLASS 1 Limited access highway CLASS 2 Multi-lane highway, not limited access CLASS 3 Other numbered route CLASS 4 Major road - collector CLASS 5 Minor street or road CLASS 6 Minor street or road CLASS 7 Highway ramp Road admin types (from file mrdac.dbf) -------------------------------------- ADMIN_TYPE 0 Local road ADMIN_TYPE 1 Interstate ADMIN_TYPE 2 U.S. Federal ADMIN_TYPE 3 State Construction date ----------------- November 17, 2003.
Запросите атрибуты в этом файле дорог.
roads = shaperead('concord_roads.shp')
roads = 609x1 struct array with fields: Geometry BoundingBox X Y STREETNAME RT_NUMBER CLASS ADMIN_TYPE LENGTH
Узнайте, сколько дорог падает в каждом КЛАССЕ.
histcounts([roads.CLASS],'BinLimits',[1 7],'BinMethod','integer')
ans = 0 14 93 26 395 81 0
Узнайте, сколько дорог падает в каждом ADMIN_TYPE.
histcounts([roads.ADMIN_TYPE],'BinLimits',[0 3],'BinMethod','integer')
ans = 502 0 0 107
Заметьте, что нет никаких дорог в этом файле, которые являются КЛАССОМ 1 ИЛИ 7, и дороги являются или ADMIN_TYPE 0 или 3.
Создайте SymbolSpec к:
Окрасьте локальные дороги (ADMIN_TYPE=0) черный.
Цветные внутриштатные дороги красный (ADMIN_TYPE=3).
Скройте очень незначительные дороги (CLASS=6).
Установите крупнейшие или более крупные дороги (CLASS=1-4) с LineWidth 2,0.
roadspec = makesymbolspec('Line',... {'ADMIN_TYPE',0, 'Color','black'}, ... {'ADMIN_TYPE',3, 'Color','red'},... {'CLASS',6, 'Visible','off'},... {'CLASS',[1 4], 'LineWidth',2}); figure mapshow('concord_roads.shp','SymbolSpec',roadspec); xlabel('easting in meters') ylabel('northing in meters')
Замените графическое свойство SymbolSpec.
roadspec = makesymbolspec('Line',... {'ADMIN_TYPE',0, 'Color','black'}, ... {'ADMIN_TYPE',3, 'Color','red'},... {'CLASS',6, 'Visible','off'},... {'CLASS',[1 4], 'LineWidth',2}); figure mapshow('concord_roads.shp','SymbolSpec',roadspec,'Color','black'); xlabel('easting in meters') ylabel('northing in meters')
Замените свойство по умолчанию SymbolSpec.
roadspec = makesymbolspec('Line',... {'Default', 'Color','green'}, ... {'ADMIN_TYPE',0, 'Color','black'}, ... {'ADMIN_TYPE',3, 'Color','red'},... {'CLASS',6, 'Visible','off'},... {'CLASS',[1 4], 'LineWidth',2}); figure mapshow('boston_roads.shp','SymbolSpec',roadspec); xlabel('easting in meters') ylabel('northing in meters')
Отобразите Бостонское изображение GeoTIFF; включает материал (c) GeoEye™, все права защищены.
figure mapshow boston.tif axis image manual off
Считайте Бостонские топонимы в порядке наложить сверху изображения GeoTIFF.
S = shaperead('boston_placenames.shp');
Проекция в файле GeoTIFF находится в модулях ног обзора. Координаты точки в файле форм исчисляются в метрах. Поэтому мы должны преобразовать координаты топонима от метров, чтобы рассмотреть ноги в порядке наложить точки на изображении.
surveyFeetPerMeter = unitsratio('sf', 'meter'); for k = 1:numel(S) S(k).X = surveyFeetPerMeter * S(k).X; S(k).Y = surveyFeetPerMeter * S(k).Y; end
Отобразите топонимы.
text([S.X], [S.Y], {S.NAME}, 'Color', [0 0 0], ... 'BackgroundColor',[0.9 0.9 0],'Clipping','on');
Увеличьте масштаб выбранной области.
xlim([ 772007, 775582]) ylim([2954572, 2956535])
Отобразитесь водоем с тремя большими островами (покажите 14 в concord_hydro_area файле форм). Обратите внимание на то, что острова видимы на ортофотографии через три "дыры" в полигоне водоема. Отобразите дороги в той же фигуре.
[ortho, cmap] = imread('concord_ortho_w.tif'); R = worldfileread('concord_ortho_w.tfw', 'planar', size(ortho)); figure mapshow(ortho, cmap, R)
Сохраните пределы карты, используемые для изображения
xLimits = xlim; yLimits = ylim; pond = shaperead('concord_hydro_area.shp', 'RecordNumbers', 14); hold on mapshow(pond, 'FaceColor', [0.3 0.5 1], 'EdgeColor', 'black') mapshow('concord_roads.shp', 'Color', 'red', 'LineWidth', 1); xlabel('easting in meters') ylabel('northing in meters')
Восстановите пределы карты, чтобы совпадать с изображением
xlim(xLimits) ylim(yLimits)
Просмотрите данные о ландшафте Горы Вашингтон как mesh. На сетку данных геоссылаются к зоне Universal, поперечной меркаторской (UTM) 19.
figure h = mapshow('9129CATD.ddf','DisplayType','mesh'); Z = h.ZData; demcmap(Z) xlabel('UTM easting in meters') ylabel('UTM northing in meters')
Просмотрите данные о ландшафте Горы Вашингтон как 3-D поверхность. Используйте 3-D представление по умолчанию, которое показывает, как диапазон смотрит с юго-запада.
figure mapshow('9129CATD.ddf'); demcmap(Z) view(3); axis equal; xlabel('UTM easting in meters') ylabel('UTM northing in meters') zlabel('Elevation in feet')
Отобразите сетку и линии контура Горы Вашингтон и Смонтируйте Дартмут.
Считайте файлы данных ландшафта.
[Z_W, R_W] = arcgridread('MtWashington-ft.grd'); [Z_D, R_D] = arcgridread('MountDartmouth-ft.grd');
Отобразите данные о ландшафте как поверхность в z == 0 плоскостей, так, чтобы лежание над линиями контура и метками было видимо.
figure hold on mapshow(zeros(size(Z_W)),R_W,'CData',Z_W,'DisplayType','surface') mapshow(zeros(size(Z_D)),R_D,'CData',Z_D,'DisplayType','surface') demcmap(Z_W) xlabel('UTM easting in meters') ylabel('UTM northing in meters') axis equal
Наложите черные линии контура и метки.
cW = mapshow(Z_W, R_W, 'DisplayType', 'contour', ... 'LineColor', 'black', 'ShowText', 'on'); cD = mapshow(Z_D, R_D, 'DisplayType', 'contour', ... 'LineColor', 'black', 'ShowText', 'on');
boston_roads.shp, concord_roads.shp, concord_hydro_line.shp, concord_hydro_area.shp, concord_ortho_e.tif:
Office of Geographic and Environmental Information (MassGIS), Commonwealth of Massachusetts Executive Office of Environmental Affairs http://www.state.ma.us/mgis
boston.tif
Copyright GeoEye Includes material copyrighted by GeoEye, all rights reserved. (GeoEye was merged into the DigitalGlobe corporation January 29th, 2013.)
For more information, run:
>> type boston.txt
9129CATD.ddf (и вспомогательные файлы):
United States Geological Survey (USGS) 7.5-minute Digital Elevation Model (DEM) in Spatial Data Transfer Standard (SDTS) format for the Mt. Washington quadrangle, with elevation in meters. http://edc.usgs.gov/products/elevation/dem.html
For more information, run:
>> type 9129.txt
MtWashington-ft.grd, MountDartmouth-ft.grd:
MtWashington-ft.grd is the same DEM as 9129CATD.ddf, but converted to Arc ASCII Grid format with elevation in feet.
MountDartmouth-ft.grd is an adjacent DEM, also converted to Arc ASCII Grid with elevation in feet.
For more information, run:
>> type MtWashington-ft.txt >> type MountDartmouth-ft.txt