<<На Главную         <В меню Советы по ArcGIS

  В серьёзных научно-производственных предприятиях, занимающихся обработкой пространственных данных (геология, геофизика, гидрогеология, метеорология, агрохимия, и т.д.) как правило, эксплуатируются несколько программ визуализации научной графики. И причина этого состоит не в том, что какие-то из них плохи, нефункциональны. Дело в том, что некоторые возможности более тонко реализует один пакет, а другие лучше отработаны в ином приложении. Как пример, можно привести сл. ситуацию. Работать с проекциями пространственных данных удобней, естественно, в ГИС (ArcGIS, MapInfo, QGIS и т.д.), поскольку они оптимальней "заточены" под это. А вот различную математическую обработку (например, фильтрацию данных, см. здесь) лучше производить в пакетах типа Surfer.  В общем, мораль ясна, надо уметь конвертировать данные, представленные, скажем, в виде интерполированных растров из одного пакета в другой (упрощённо говоря, "перегонять" данные туда-сюда). На нашем сайте уже есть материал, как отконвертировать поверхность из ГИС MapInfo в Surfer  и как экспортировать сетку из MapInfo в ArgGIS . Далее будет рассказано о том, как можно экспортировать интерполированные поверхности (растры) из ArcGIS в программу Surfer.

Предположим, что наша исходная карта выглядит сл. образом:

Задача - экспортировать интерполированную сетку (grid) mysurf (см. рисунок выше) в программу Surfer.

Подойти к решению поставленной задачи будет гораздо проще, если представлять себе ,  что интерполированный растр - это совокупность пикселей, каждый из которых содержит информацию о значении параметра Z. Алгоритм действий напрашивается сам собой - для начала нужно "развалить" поверхность на совокупность точек, каждая из которых будет 'знать' о значении интерполированного параметра. Разработчики ArcGIS пошли именно по такому пути и создали утилиту Raster to Point (Растр в точки):

На вход указанной утилиты подаём растровую поверхность , на выходе получаем слой точек в виде shape-файла, в атрибутивной таблице которого содержаться значение параметра Z:

Однако, для построения карты такой информации будет маловато - необходимо ещё знать и координаты X/Y точки, естественно. И тут в ArcGIS существует несколько вариантов решения этой задачки. Один из них, с использование утилиты Add XY Coordinate уже рассмотрен на нашем сайте и эту информацию можно посмотреть здесь. В этой статье рассмотрим ещё один способ - с помощью Geometry Calculator. Делается это сл. образом. В Менеджере слоёв (Таблица содержания) становимся на нужный слой точек, жмём на правую кнопку и в контекстном меню выбираем Open Attribute Table (Атрибутивные данные). Затем, как показано на рисунке ниже , добавляем в табличку две колонки - назовём их X и Y :

Заполняем реквизиты поля приблизительно так:

Теперь становимся последовательно на каждую из этих колонок (на заголовок столбца), жмём на правую кнопку мыши и выбираем Calculate Geometry:

Жмём на этот пункт и задаём нужное свойство точки (координаты X/Y):

После проведённых манипуляций наша атрибутивная табличка выглядит так:

Вот теперь у нас всё готово для экспорта. И тут тоже можно выбрать несколько вариантов действий. Выберем путь экспорта наших данных в .dbf -файл утилитой Table to dBase из набора инструментов Conversion Tools:

Так, после отработки утилиты переходим в программу Surfer, идём в меню Grid>Data и подхватываем только-что созданный .dbf - файл:

 

 

Программа предлагает нам выбрать опции построения регулярной сетки - колонки данных X/Y/Z, метод интерполяции, размер ячейки и т.д. :

Жмём OK и получаем файл сетки в формате программы Surfer с расширением .grd. Теперь можно различным образом визуализировать эти данные, например построить карту изолиний (как пример) по меню Map>New Map>Contour Map :

Ну вот, задачу по экспорту поверхности из ArcGIS в Surfer, собственно, и решили.

Как экспортировать  поверхность из MapInfo в Surfer - смотрите в этой статье

Как перенести поверхность из MapInfo в ArcGIS - смотрите статью на нашем сайте по этой ссылке

©Simashkov.2011

03.12.2011 г.

Назад