Как в QGIS присоединить таблицу к полигону через общее поле атриб таблицы?

Вопросы по свободной ГИС QGIS. Сообщения об ошибках, предложения по улучшению, локализация.
Ответить
Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 3020
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 69
Ваше звание: Лиса
Откуда: **
Контактная информация:

Как в QGIS присоединить таблицу к полигону через общее поле атриб таблицы?

Сообщение Natalia Novoselova » 23 окт 2017, 17:28

Как можно решить такую задачу?
Есть слой полигонов, в атрибутивной таблице которых есть поле ID_Fragm.
Есть таблица в Excel где есть много полей, среди который есть поле ID_Fragm (Таблица 1)
Как присоединить таблицу 1 к атрибутивной таблице полигонов в QGIS через одинаковые значения в поле ID_Fragm.

Подскажите, пож-та, пути решений (плагин или внутреннюю функцию).

Аватара пользователя
Эдуард Казаков
Гуру
Сообщения: 546
Зарегистрирован: 23 апр 2014, 17:11
Репутация: 532
Откуда: Planet Earth
Контактная информация:

Re: Как в QGIS присоединить таблицу к полигону через общее поле атриб таблицы?

Сообщение Эдуард Казаков » 23 окт 2017, 18:51

Перетаскивайте excel-таблицу в дерево слоёв, она добавится как источник атрибутивных данных (можно через слой - добавить векторный слой). Затем в слое полигонов заходите в свойства - связи. Там находите кнопочку добавить связь, ну а дальше должно быть понятно.

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 3020
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 69
Ваше звание: Лиса
Откуда: **
Контактная информация:

Re: Как в QGIS присоединить таблицу к полигону через общее поле атриб таблицы?

Сообщение Natalia Novoselova » 23 окт 2017, 19:08

Эдуард Казаков писал(а):
23 окт 2017, 18:51
Перетаскивайте excel-таблицу в дерево слоёв, она добавится как источник атрибутивных данных (можно через слой - добавить векторный слой). Затем в слое полигонов заходите в свойства - связи. Там находите кнопочку добавить связь, ну а дальше должно быть понятно.
Спасибо, сработало!

А что означает Target field в свойствах присоединения?

Запишу для памяти по шагам.

1. Layer - Add Vector Layer (галочку на File) - выбрать table1.xlsx (в листе Data нужные для присоединения данные).
2. Таблица table1.xlsx загружается слоем.
3. Открыть свойства слоя с полигонами > перейти в Joins > нажать на значок "зеленый плюс" внизу.
4.Установить:
Join layer - table1 Data None
Join Field - Id_Fragm - поле присоединения в таблице.
Target field - поле по которому нужно произвести соединение в полигональной теме.
в моем случае оба поля названы одинаково.
Последний раз редактировалось Natalia Novoselova 23 окт 2017, 20:09, всего редактировалось 1 раз.

trir
Гуру
Сообщения: 5292
Зарегистрирован: 09 апр 2010, 19:30
Репутация: 1015
Ваше звание: просто мимо прохожу
Откуда: Ё-бург

Re: Как в QGIS присоединить таблицу к полигону через общее поле атриб таблицы?

Сообщение trir » 23 окт 2017, 19:47

Target field Что это, не поняла. Я установиа там тоже "Id_Fragm". И это не помешало присоединить верно.
я вам сто раз говорил - учите SQL, там всё объясняют

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 3020
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 69
Ваше звание: Лиса
Откуда: **
Контактная информация:

Re: Как в QGIS присоединить таблицу к полигону через общее поле атриб таблицы?

Сообщение Natalia Novoselova » 23 окт 2017, 20:06

trir писал(а):
23 окт 2017, 19:47
я вам сто раз говорил - учите SQL
Понятно, это вынесенный в панель оператор SQL.

В статье нет про Target field, но я поняла , что Join Field - поле присоединения в Таблице, а Target field поле в полигональном слое по которому ты хочешь присоединить.

Да, конечно, все логично, они и не должны быть названы одинаково.

trir
Гуру
Сообщения: 5292
Зарегистрирован: 09 апр 2010, 19:30
Репутация: 1015
Ваше звание: просто мимо прохожу
Откуда: Ё-бург

Re: Как в QGIS присоединить таблицу к полигону через общее поле атриб таблицы?

Сообщение trir » 23 окт 2017, 21:05

это всё - просто Реляционная алгебра

Ответить

Вернуться в «QGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: Semrush [Bot] и 23 гостя