readgeotable

Считайте геопространственную таблицу из векторного файла данных

Описание

пример

T = readgeotable(filename) составляет геопространственную таблицу путем чтения географический или спроектировал векторные данные из файла. Поддерживаемые форматы файлов включают файл форм, KML и геобазу данных файла Esri. Для полного списка поддерживаемых форматов смотрите Поддерживаемые форматы и Расширения.

T = readgeotable(filename,Name=Value) задает опции с помощью аргументов name-value. Например, задайте тип системы координат с помощью CoordinateSystemType аргумент значения имени.

Примеры

свернуть все

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

T = readgeotable("concord_roads.shp");

Shape переменная таблицы содержит информацию о дорожных формах, включая систему координат (CRS). Дорожные формы в этом файле форм используют спроектированный CRS.

T.Shape.ProjectedCRS
ans = 
  projcrs with properties:

                    Name: "NAD83 / Massachusetts Mainland"
           GeographicCRS: [1x1 geocrs]
        ProjectionMethod: "Lambert Conic Conformal (2SP)"
              LengthUnit: "meter"
    ProjectionParameters: [1x1 map.crs.ProjectionParameters]

Отобразите дороги на карте.

mapshow(T)
xlabel("x (meters)")
ylabel("y (meters)")

Figure contains an axes object. The axes object contains 609 objects of type line.

Дополнительный файл проекции (.prj) определяет тип системы координат для файла форм. Когда ваш файл форм не имеет файла проекции, но вы знаете тип системы координат, можно задать его при помощи CoordinateSystemType аргумент значения имени.

Считайте файл форм под названием tsunamis.shp, содержа информацию о событиях цунами, в рабочую область. Метаданные, сопровождающие файл, указывают, что файл форм использует географические координаты.

T = readgeotable("tsunamis.shp",CoordinateSystemType="geographic");

Просмотрите Shape переменная геопространственной таблицы. Исходные местоположения цунами хранятся как точки.

T.Shape
ans = 
  162×1 geopointshape array with properties:

               NumPoints: [162×1 double]
                Latitude: [162×1 double]
               Longitude: [162×1 double]
                Geometry: "point"
    CoordinateSystemType: "geographic"
           GeographicCRS: []

Постройте исходные местоположения на веб-карте.

wmmarker(T)

Файлы GPX могут содержать до пяти слоев: waypoints, дорожки, отслеживают точки, маршруты и точки маршрута. Когда вы читаете слой, содержащий точки дорожки, или направляете точки, геопространственная таблица содержит переменную ID, которая сопоставляет точки с дорожкой или маршрутом.

Импортируйте слой дорожек файла GPX с двумя дорожками. Shape переменной для каждой дорожки является geolineshape объект.

T = readgeotable("sample_tracks.gpx",Layer="tracks")
T=2×3 table
       Shape                                                  Name                                               Number
    ____________    _________________________________________________________________________________________    ______

    geolineshape    "Track logs from walking the perimeter of the MathWorks campus in Natick on May 21, 2007"      1   
    geolineshape    "Track logs from biking from Concord to the MathWorks campus in Natick on June 30, 2011"       2   

Просмотрите форму каждой дорожки. Первая дорожка имеет один сегмент, и вторая дорожка имеет пять сегментов.

T.Shape(1)
ans = 
  geolineshape with properties:

                NumParts: 1
                Geometry: "line"
    CoordinateSystemType: "geographic"
           GeographicCRS: [1×1 geocrs]

T.Shape(2)
ans = 
  geolineshape with properties:

                NumParts: 5
                Geometry: "line"
    CoordinateSystemType: "geographic"
           GeographicCRS: [1×1 geocrs]

Импортируйте слой точек дорожки. Shape переменной для каждой точки является geopointshape объект.

T2 = readgeotable("sample_tracks.gpx",Layer="track_points");
T2.Shape
ans = 
  2586×1 geopointshape array with properties:

               NumPoints: [2586×1 double]
                Latitude: [2586×1 double]
               Longitude: [2586×1 double]
                Geometry: "point"
    CoordinateSystemType: "geographic"
           GeographicCRS: [1×1 geocrs]

Создайте подтаблицу, которая содержит точки во второй дорожке только. Для этого файла точки во второй дорожке имеют TrackFID значение 1.

rows = (T2.TrackFID == 1);
T3 = T2(rows,:);

Постройте точки в подтаблице как синяя линия.

wmline(T3,Color="b")

Входные параметры

свернуть все

Имя файла для чтения, заданное в виде вектора символов или строкового скаляра. Форма filename зависит от местоположения вашего файла.

  • Если файл находится в вашей текущей папке или в папке на MATLAB® путь, затем задайте имя файла, такого как "myFile.shp".

  • Если файл не находится в текущей папке или в папке на пути MATLAB, то задайте полное имя или относительный путь, такой как "C:\myfolder\myFile.gpx" или "dataDir\myFile.kml".

Для списка поддерживаемых форматов файлов смотрите Поддерживаемые форматы и Расширения.

Чтобы считать геобазу данных файла Esri, необходимо или задать полное имя или относительный путь или включать геобазу данных в текущую папку.

Типы данных: char | string

Аргументы name-value

Задайте дополнительные пары аргументов как Name1=Value1,...,NameN=ValueN, где Name имя аргумента и Value соответствующее значение. Аргументы name-value должны появиться после других аргументов, но порядок пар не имеет значения.

Пример: readgeotable("sample_tracks.gpx",Layer="track_points") читает слой точек дорожки из файла GPX.

Слой, чтобы читать, когда файл содержит несколько слоев в виде положительного целого числа, строкового скаляра или вектора символов. Если вы задаете целое число, то это должно быть меньше чем или равно количеству векторных слоев в файле.

Слои, содержавшиеся в файле, зависят от формата файла. Файлы форм имеют один слой. Содержимое геобаз данных файла Esri и файлов GeoJSON определяет количество слоев и имена слоев. Каждая папка и подпапка файлов KML соответствуют слоям, и имена папок совпадают с именами слоя.

Для файлов GPX задайте слой как одну из этих опций:

  • "waypoints" 'Waypoints' .

  • "tracks" — Отследите линии.

  • "track_points" — Отследите точки. Когда вы читаете точки дорожки, геопространственная таблица содержит переменную ID, TrackFID, это сопоставляет каждую точку с дорожкой.

  • "routes" — Направьте линии.

  • "route_points" — Направьте точки. Когда вы читаете точки маршрута, геопространственная таблица содержит переменную ID, RouteFID, это сопоставляет каждую точку с маршрутом.

Типы данных: single | double | char | string

Тип системы координат в виде одного из этих значений:

  • "auto" — Создайте Shape табличная переменная на основе содержимого файла.

  • "geographic" — Создайте Shape табличная переменная с помощью geopointshape, geolineshape, и geopolyshape объекты.

  • "planar" — Создайте Shape табличная переменная с помощью mappointshape, maplineshape, и mappolyshape объекты.

Задайте тип системы координат когда readgeotable функция не может обнаружить тип системы координат.

Для файлов форм тип системы координат определяется дополнительным файлом проекции (.prj). Если ваш файл форм не имеет файла проекции, можно попытаться определить тип системы координат с помощью одной из этих опций:

  • Обратитесь к метаданным.

  • Спросите своего провайдера данных.

  • Возвратите информацию о файле форм как структура при помощи shapeinfo функция. Затем просмотрите пределы данных путем запроса BoundingBox поле структуры. Пределы могут помочь вам предсказать тип системы координат.

Отметьте, чтобы сохранить имена переменных в виде одной из этих опций:

  • "preserve" — Сохраните имена переменных, которые не являются допустимыми идентификаторами MATLAB, такими как имена переменных, которые включают символы non-ASCII и пробелы.

  • "modify" — Преобразуйте недопустимые имена переменных, как идентифицировано isvarname функция, к допустимым идентификаторам MATLAB.

Типы данных: char | string

Выходные аргументы

свернуть все

Геопространственная таблица, возвращенная как геопространственная таблица. Геопространственной таблицей является table объект с Shape переменная и переменные атрибута.

  • Shape переменная содержит 2D информацию о точке, линии и формах многоугольника. Shape переменная может содержать комбинации типов формы. Все формы имеют ту же систему координат (CRS).

    readgeotable функция представляет формы координатами в географическом CRSs при помощи geopointshape, geolineshape, и geopolyshape объекты.

    readgeotable функция представляет формы координатами в спроектированном CRSs при помощи mappointshape, maplineshape, и mappolyshape объекты.

  • Переменные атрибута содержат данные, такие как имена, классификации и измерения.

Когда файл данных содержит информацию о CRS, readgeotable функция хранит информацию как projcrs или geocrs объект в каждом объекте фигуры.

Больше о

свернуть все

Поддерживаемые форматы и расширения

readgeotable функционируйте поддерживает эти форматы файлов и расширения.

FileFormat Расширение
Геобаза данных файла Esri.gdb
GeoJSON.json или .geojson
GPX.gpx
KML.kml
Файл форм.shp

Некоторые форматы файлов состоят из основного файла и нескольких вспомогательных файлов. Например, файлы форм включают основной файл (.shp), индексный файл (.shx), и файл атрибутов (.dbf). Когда вы читаете файл данных со вспомогательными файлами с помощью readgeotable функционируйте, задайте расширение основного файла.

Когда файл содержит 3-D точки, линии или многоугольники, функция считывает только 2D информации в Shape переменная геопространственной таблицы.

Для файлов GeoJSON все атрибуты применяются ко всем строкам в геопространственной таблице, даже когда файл GeoJSON не применяет атрибут ко всем элементам. Когда файл не применяет атрибут к элементу, соответствующая ячейка в геопространственной таблице содержит недостающее значение данных.

Для файлов GPX не поддерживаются расширения Garmin®.

Для файлов KML, readgeotable функционируйте читает только формы, имена и описания в геопространственную таблицу.

Советы

  • Можно сохранить KML или файлы GeoJSON от веб-сервиса до файла при помощи websave функция.

Введенный в R2021b