Создание точечного слоя из текстового файла в QGIS

Материал из GIS-Lab
Версия от 08:01, 24 февраля 2012; Bolotoved (обсуждение | вклад) (Новая страница: «{{Статья|Черновик}} <p class="ann">Довольно часто геоданные (информация имеющая координатную пр...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску
Эта страница является черновиком статьи.



Довольно часто геоданные (информация имеющая координатную привязку) хранятся в виде текста или таблиц и возникает потребность преобразовать их в какой-либо векторный формат. В статье описывается последовательность действий по созданию точечного shape-файла из текста с разделителями в QGIS.

Подготовка данных

Вначале, необходимо подготовить данные: удобнее всего это делать в табличном редакторе (например, Excel), но можно работать и в любом простом текстовом редакторе типа блокнота (Notepad - блокнот входящий в стандартные программы Windows, или более удобный и работающий с большими текстовыми файлами OpenSource Notepad++). В Exсel необходимо создать три основные колонки (другие атрибутивные колонки также могут присутствовать):

  • названием точки
  • широта
  • долгота

В качестве примера, приведем таблицу описаний растительности: в первой колонке - номер описания, далее - широта, долгота, высота НУМ и название растительного комплекса. Широта указывается в десятичных градусах или в метрах (если использована прямоугольная система координат). В случае, если исходные координаты представлены в виде градусов, минут и секунд, вначале их необходимо преобразовать в десятичные.

Excel-red.png

После того, как ваши данные приведены к указанному виду, необходимо сохранить их как текстовый файл. Рекомендуем сохранять в виде текста с разделителями табуляцией. В Excel: Файл -> Сохранить как, и во вкладке "Тип файла" выбрать "текстовые файлы (с разделителями табуляции (*.txt)".

Советы:

  • Называйте колонки коротко, латинскими буквами и без пробелов.
  • Если колонку с широтой назвать Lat (Latitude), а с долготой - Lon (Longitude), то программа автоматически распознает, что в этих колонках находится соответственно широта и долгота, в противном случае, вам придется это указывать вручную.
  • Проверьте, что в качестве разделителя целой и дробной части всегда используется один и тот же знак (точка или запятая).

Модуль текст с разделителями

Для преобразования текстовых данных в векторный слой в QGIS имеется модуль "Текст с разделителями" Delimited text.png. Модуль входит в ядро QGIS и не требует установки, однако следует убедиться, что он активирован. Для этого на главной панели QGIS зайдите во вкладку "Модули" -> "Управление модулями" и убедитесь, что на против модуля "Текст с разделителями" стоит галочка:

Manager-dtext.png

Запускаем модуль с главной панели QGIS: Слой -> Добавить слой из текста с разделителями, или нажав на кнопку Delimited text.png.

В открывшемся диалоговом окне в графе "Имя файла" выбираем созданный на предыдущем шаге текстовый файл. Указываем, что это текст с разделителями (галочка "Разделители"), тип разделителя - табуляция (или другой использованный вами). Обработку начинаем с 0 строки - в этом случае, в качестве заголовков колонок будут использованы заголовки созданные на первом шаге. Ставим галочку против "Формат XY" в качестве X координаты выбираем колонку с долготой, в качестве Y - колонку с широтой. Выбираем тип разделителя целой и дробной части (Decimal point) - указываем точку или запятую. Убеждаемся, что таблица имеет узнаваемый вид в нижнем окошке "Образец". Если таблица "разрушилась", убедитесь, что правильно задали разделитель или не задали лишний разделитель:

Dtext window.png

Жмем "ОК". Теперь нам необходимо указать использованную систему координат: если координаты заданы в градусах, то это географическая система координат, а в случае, если данные сняты GPS, то почти наверняка был использован эллипсоид WGS84. Чтобы быстро найти в обширном списке координатных систем необходимую, набираем в графе "Filter" "WGS 84" и выбираем ее из списка Географических систем координат:

Dtext-coord.png

Жмем "ОК". Теперь необходимо убедиться, что точки легли туда куда нужно. В случае если точки сильно "улетели", проверьте, не перепутали ли вы местами широту и долготу на предыдущем шаге. В случае, если точки "улетели" метров на 50-100, дело может быть в неправильно заданной системе координат, необходимо выяснить параметры СК в которой снимались координаты.

Dtext verify.png

На завершающем шаге необходимо сохранить полученный векторный слой. Правой кнопкой мыши щелкаем по созданному слою в менеджере слоев и выбираем "Сохранить как".

Dtext saveas.png

Далее указываем тип файла (Syape-файл ESRI), каталог для сохранения, кодировку (system) и координатную систему для сохраняемого слоя. Если нужно сохранить в СК заданной на предыдущем шаге, выберите "Layer CRS" (Система координат слоя). Жмем "ОК".

Dtext-shape.png

Теперь загружаем созданный Shape-файл, открываем его таблицу атрибутов и убеждаемся, что все в порядке: проблемы могут возникнуть, если текстовое поле длиннее 80 символов. Как задать длину текстового поля, а также другие параметры полей при импорте из текстового файла см. следующий дополнительный раздел.

Ссылки

Конвертация значений координат в формате DDMMSS в формат DD.DDDD