5. Создание данных

gentleLogo

Цель:

Научиться создавать и редактировать векторные данные и их атрибуты.

Основные понятия:

Редактирование, оцифровка, heads-up, таблица, база данных.

5.1. Обзор

В двух предыдущих разделах мы познакомились с векторными данными. Мы узнали, что векторные данные имеют две основных составляющих, а именно: геометрию и атрибуты. Геометрия векторного объекта описывает его форму и положение, а атрибуты — его свойства (цвет, размер, возраст, и т.д.).

Этот раздел посвящен процессам создания и редактирования векторных данных — как геометрии, так и атрибутов объектов.

5.2. Как QGIS хранит данные?

Текстовые процессоры, электронные таблицы, графические пакеты это всё программы, позволяющие создавать и редактировать цифровые данные. Каждое приложение сохраняет данные в определенном формате. Например, графический редактрор позволяет сохранить ваш рисунок как .jpg изображение JPEG, текстовый редактор — как .odt документ OpenDocument или .doc документ Word и т.д.

Как и все остальные приложения, ГИС-приложение может сохранять свои данные в файлы на диске. Существует множество различных форматов для ГИС-данных, но наиболее распростаненным, пожалуй, является shape-файл. Название немного странное, так как хотя мы и называем его shape-файлом (в единственном числе), на самом деле он состоит как минимум из трех разных файлов, которые и используются для хранения ваших векторных данных в цифровом виде, как показано в таблице table_shapefile.

Расширение

Описание

.shp

В этом файле хранится геометрия векторных объектов

.dbf

Файл содержит атрибуты объектов

.shx

Это индексный файл, помогающий ГИС-приложению находить объекты быстрее.

Table Shapefile 1: Основные файлы, образующие shape-файл.

When you look at the files that make up a shapefile on the computer hard disk, you will see something like Рис. 5.8. If you want to share vector data stored in shapefiles with another person, it is important to give them all of the files for that layer. So in the case of the trees layer shown in Рис. 5.8, you would need to give the person trees.shp, trees.shx, trees.dbf, trees.prj and trees.qml.

../../_images/shapefile_on_disk.png

Рис. 5.8 Файлы, образующие shape-файл «trees», в файловом менеджере.

Многие ГИС-приложения также могут хранить данные в базе данных. В общем случае, хранение ГИС-данных в базе является хорошим решением, так как база может хранить большие объемы данных эффективно и может предоставлять их ГИС-приложению очень быстро. Использование базы данных также позволяет одновременную работу нескольких пользователей с одним и тем же векторным слоем. Настройка базы данных для хранения ГИС-данных сложнее использования shape-файлов, поэтому в пока мы будем рассматривать создание и редактирование shape-файлов.

5.3. Планирование

Прежде чем создать новый векторный слой (который будет храниться в shape-файле), необходимо определиться с типом геометрии слоя (точечный, линейный или полигональный), а также с набором атрибутов. Чтобы было понятнее, рассмотрим несколько примеров.

5.3.1. Пример 1: Создание туристической карты

Представьте, что вы решили создать хорошую туристическую карту вашего региона. Вы решили, что это должен быть лист топографической карты масштаба 1:50000 с наложенными маркерами, отмечающими интересные туристам места. Сначала подумаем о геометрии. Мы знаем, что векторный слой может содержать точки, линии или полигоны. Что же выбрать для нашей туристической карты? Можно использовать точки, если мы хотим отмечать определеные места, например, обзорные площадки, мемориалы, места сражений и т.п. Если мы хотим провести туристов по маршруту, например живописному маршруту через горный перевал, возможно, стоит использовать полилинии. Ну а если необходимо показать целые области, представляющие интерес для туристов, такие как заповедники, то полигоны будут хорошим выбором.

As you can see it’s often not easy to know what type of geometry you will need. One common approach to this problem is to make one layer for each geometry type you need. So, for example, if you look at digital data provided by the Chief Directorate: Surveys and Mapping, South Africa, they provide a river areas (polygons) layer and a rivers polyline layer. They use the river areas (polygons) to represent river stretches that are wide, and they use river polylines to represent narrow stretches of river. In Рис. 5.9 we can see how our tourism layers might look on a map if we used all three geometry types.

../../_images/tourism_map.png

Рис. 5.9 Туристическая карта. Мы использовали три разных типа геометрии для правильного отображения различных объектов, чтобы дать пользователям всю необходимую информацию.

5.3.2. Пример 2: Создание карты загрязнений реки

Если вы хотите замерить уровень загрязнения вдоль реки, вы будете двигаться по реке на лодке или идти вдоль берегов. Через равные промежутки вы будете останавливаться и проводить различные измерения, такие как уровень растворенного кислорода, число бактерий кишечной палочки, уровень мутности и pH. Вам также необходимо отмечать своё положение на карте или записывать его с помощью приемника GPS.

Для хранения, собранных таким образом, данных в ГИС-приложении вы скорее всего создатите точечный слой. Использование точек в данном случае имеет смысл, т.к. каждый образец был получен в определенном месте.

Что касается атрибутов, то нам потребуется поле для каждого собранного параметра. Поэтому наша таблица атрибутов будет выглядеть примерно как таблица table_river_attributes.

SampleNo

pH

DO

CB

Turbidity

Collector

Date

1

7

6

N

Низкая

Patience

12/01/2009

2

6.8

5

Y

Средняя

Thabo

12/01/2009

3

6.9

6

Y

Высокая

Victor

12/01/2009

Table River Attributes 1: Рисование подобных таблиц перед созданием векторного слоя поможет вам определиться с набором необходимых атрибутов (столбцов). Обратите внимание, что геометрия (координаты места получения образцов) в таблице не отображается –– ГИС-приложение хранит их отдельно!

5.4. Создание пустого shape-файла

После того как вы определились с тем, какие объекты будут переноситься в ГИС, выбрали подходящий тип геометрии и набор атрибутов, можно переходить к следующему шагу — созданию пустого shape-файла.

The process usually starts with choosing the „new vector layer“ option in your GIS Application and then selecting a geometry type (see Рис. 5.10). As we covered in an earlier topic, this means choosing either point, polyline or polygon for the geometry.

../../_images/new_shapefile.png

Рис. 5.10 Для создания нового векторного слоя необходимо всего лишь заполнить небольшую форму. Сначала выбирается тип геометрии, а потом добавляются атрибуты.

Затем необходимо добавить поля таблицы атрибутов. Как правило, названия полей должны быть короткими, не содержать пробелов и отражать тип хранимой информации. Например, поля могут иметь имена «ph», «RoofColor», «RoadType» и т.д. Помимо имени поля необходимо также указать какая информация будет в нем храниться, т.е. это число, слово или предложение, или же дата.

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

Shape-файл позволяет хранить числовую информацию либо в виде целого числа (integer), либо в виде десятичного (floating point) — так что перед выбором типа данных подумайте будут ли ваши числа содержать десятичную точку или нет.

The final step (as shown in Рис. 5.11) for creating a shapefile is to give it a name and a place on the computer hard disk where it should be created. Once again it is a good idea to give the shapefile a short and meaningful name. Good examples are „rivers“, „watersamples“ and so on.

../../_images/save_shapefile.png

Рис. 5.11 После определения геометрии и атрибутов нового слоя, его необходимо сохранить на диск. Shape-файлам желательно давать короткие, но осмысленные имена.

Подведем итоги. Для создания shape-файла необходимо определиться с типом геометрии, затем создать одно или несколько полей атрибутивной таблицы и, наконец, сохранить файл на диске под понятным именем. Как два байта переслать!

5.5. Добавление данных в shape-файл

Пока мы создали только пустой shape-файл. Теперь начнем редактирование shape-файла, выбрав пункт «начать редактирование» в меню или нажав соответствующую кнопку на панели инструментов. Shape-файлы по умолчанию открываются в режиме «только чтение» чтобы предотвратить случайное изменение или удаление данных. После перехода в режим редактирования можно добавлять данные. Создание записи в shape-файле условно разбивается на два шага:

  1. создание геометрии

  2. ввод атрибутов

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

To capture a point, you first use the map pan and zoom tools to get to the correct geographical area that you are going to be recording data for. Next you will need to enable the point capture tool. Having done that, the next place you click with the left mouse button in the map view, is where you want your new point geometry to appear. After you click on the map, a window will appear and you can enter all of the attribute data for that point (see Рис. 5.12). If you are unsure of the data for a given field you can usually leave it blank, but be aware that if you leave a lot of fields blank it will be hard to make a useful map from your data!

../../_images/attribute_dialog.png

Рис. 5.12 После создания точки, вам будет предложено задать её атрибуты. Диалог ввода атрибутов строится на основании информации об атрибутах, указанной при создании векторного слоя.

To capture a polyline the process is similar to that of a point, in that you need to first use the pan and zoom tools to move the map in the map view to the correct geographical area. You should be zoomed in enough so that your new vector polyline feature will have an appropriate scale (see Векторные данные for more details on scale issues). When you are ready, you can click the polyline capture icon in the tool bar and then start drawing your line by clicking on the map. After you make your first click, you will notice that the line stretches like an elastic band to follow the mouse cursor around as you move it. Each time you click with the left mouse button, a new vertex will be added to the map. This process is shown in Рис. 5.13.

../../_images/capture_polyline.png

Рис. 5.13 Создание линий для туристической карты. При редактировании линейного слоя узлы отображаются в виде круглых маркеров. При необходимости исправить геометрию линии, узлы можно двигать мышью. При создании новой линии (показана красным), каждый щелчок мыши добавляет новый узел.

Когда создание линии закончено, используйте правую кнопку мыши, чтобы завершить редактирование. Как и в случае создания точки, после этого появится диалог ввода атрибутов нового объекта.

Создание полигона во многом похоже на создание полилинии, за исключение того, что необходимо использовать инструмент создания полигона. В процессе создания полигона вы увидите, что ГИС-приложение всегда создаёт замкнутую область.

Для добавления нового объекта после первого, просто ещё раз щелкните по карте инструментом создания точки, линии или полигона и рисуйте новый объект.

После того как все объекты созданы, убедитесь, что вы отключили режим редактирования нажатием на соответствующую кнопку панели инструментов. При этом ГИС-приложение сохранит созданные вами данные.

5.6. Экранная оцифровка

As you have probably discovered by now if you followed the steps above, it is pretty hard to draw the features so that they are spatially correct if you do not have other features that you can use as a point of reference. One common solution to this problem is to use a raster layer (such as an aerial photograph or a satellite image) as a backdrop layer. You can then use this layer as a reference map, or even trace the features off the raster layer into your vector layer if they are visible. This process is known as „heads-up digitising“ and is shown in Рис. 5.14.

../../_images/headsup_digitizing.png

Рис. 5.14 Экранная оцифровка с использованием спутникового изображения в качестве подложки. Изображение используется в качестве основы, по которой выполняется трассировка линий.

5.7. Оцифровка с использованием графического планшета

Another method of capturing vector data is to use a digitising table. This approach is less commonly used except by GIS professionals, and it requires expensive equipment. The process of using a digitising table, is to place a paper map on the table. The paper map is held securely in place using clips. Then a special device called a „puck“ is used to trace features from the map. Tiny cross-hairs in the puck are used to ensure that lines and points are drawn accurately. The puck is connected to a computer and each feature that is captured using the puck gets stored in the computer’s memory. You can see what a digitising puck looks like in Рис. 5.15.

../../_images/digitizing_table.jpg

Рис. 5.15 Графический планшет и шайба используются ГИС-профессионалами при оцифровке объектов с существующих карт.

5.8. После оцифровки объектов…

После того, как все объекты оцифрованы, вы можете применить полученные ранее знания для настройки отображения слоёв. Выбор подходящего отображения данных поможет вам лучше понять их.

5.9. Частые ошибки / о чем стоит помнить

If you are digitising using a backdrop raster layer such as an aerial photograph or satellite image, it is very important that the raster layer is properly georeferenced. A layer that is georeferenced properly displays in the correct position in the map view based on the GIS Application’s internal model of the Earth. We can see the effect of a poorly georeferenced image in Рис. 5.16.

../../_images/georeferencing_issue.png

Рис. 5.16 Важность использования правильно привязанных изображений при экранной оцифровке. Слева находится правильно привязанное изображение, объекты слоя дорог (показаны оранжевым) хорошо совмещаются с подложкой. Если изображение привязано неправильно (как на рисунке справа) объекты не будут совмещаться. Ещё хуже, когда это изображение используется для оцифровки новых объектов, ведь созданные объекты будут неправильными!

Также стоит помнить, что необходимо устанавливать правильный масштаб, чтобы получаемые векторные объекты можно было использовать. Как было показано в предыдущем разделе, выполнять оцифровку в масштабе 1:1000 000 для дальнейшего использования данных при масштабе 1:50 000 не самая лучшая идея.

5.10. Что мы узнали?

Подведём итоги:

  • Оцифровка это процесс сохранения информации о геометрии и атрибутах объекта в цифровом формате на диске компьютера.

  • ГИС-данные могут храниться в базе данных или в файлах.

  • Наиболее распространенным форматом является shape-файл, который на самом деле состоит из трех и более файлов (.shp, .dbf and .shx).

  • Перед созданием нового векторного слоя необходимо определиться с его геометрией и набором атрибутов.

  • Геометрия может быть точечной, линейной или полигональной.

  • Атрибуты могут иметь тип integer (целые числа), floating point (плавающая точка), string (строка) или date (дата).

  • Процесс оцифровки можно разбить на рисование геометрии на карте и ввод атрибутов. Эти шаги повторяются для каждого объекта.

  • Экранная оцифровка часто используется для упрощения ориентирования при оцифровке и использует растр в качестве подложки.

  • Профессиональные пользователи ГИС иногда используют графический планшет для получения данных с бумажных карт.

5.11. Попробуйте сами!

Вот некоторые идеи для заданий:

  • Составьте список объектов вокруг школы, которые было бы интересно оцифровать. Например, граница школы, расположение пожарных щитов, кабинеты и т.д. Постарайтесь использовать различные типы геометрии. Затем разбейте учащихся на группы и каждой группе выдайте объекты для оцифровки. Попросите их настроить отображение полученных слоёв, чтобы они были более информативными. Используйте слои, подготовленные всеми группами, для создания карты школы и её окрестностей!

  • Найдите речку и возьмите пробы воды вдоль её течения. Тщательно обозначьте места взятия проб при помощи GPS или отмечая положение на топографической карте. Для каждого образца измерьте ряд параметров, например pH, уровень растворенного кислорода и т.п. Внесите собранные данные в ГИС-приложение и создайте карту проб, используя подходящую символику. Можете ли вы определить по ней проблемные участки? Способствовало ли этому использование ГИС-приложения?

5.12. Стоит учесть

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

5.13. Дополнительная литература

The QGIS User Guide has more detailed information on digitising vector data in QGIS.

5.14. Что дальше?

В следующем разделе мы познакомимся с растровыми данными и узнаем как они используются в ГИС.