Создание слоя точек из таблицы

Здесь нужно сообщать об ошибках в QGIS, с подробным описанием шагов и версии ПО.
Донецков
Гуру
Сообщения: 3051
Зарегистрирован: 19 май 2010, 19:44
Репутация: 188

Создание слоя точек из таблицы

Сообщение Донецков » 19 апр 2016, 17:03

Версия QGIS 2.14.1-Essen
пытаюсь открыть xls файл состоящий из 2 колонок (широта, долгота), типа:
46.07500000000000;142.1861111111110
46.06944444444440;142.1916666666670
46.06666666666670;142.1916666666670
появляется слой, но без графических примитивов, только семантика... (хотя на предыдущих версиях точки отрисовывались)
Сохранил в csv, загружаю через "Создать слой из текстового файла", указываю разделитель ";", выбираю какая колонка широта/долгота, но открывается опять же без семантики ...
Сохранил как точечный shp, который не содержит графических примитивов ...
В чем может быть причина?
Как отрисовать точки по атрибутам?

voltusya
Участник
Сообщения: 58
Зарегистрирован: 04 ноя 2014, 18:40
Статьи: 1
Репутация: 29
Откуда: Санкт-Петербург

Re: Создание слоя точек из таблицы

Сообщение voltusya » 19 апр 2016, 18:16

Добрый день. У меня возникала такая проблема, если первая строчка с координатами была пустая. Может у вас также?

Донецков
Гуру
Сообщения: 3051
Зарегистрирован: 19 май 2010, 19:44
Репутация: 188

Re: Создание слоя точек из таблицы

Сообщение Донецков » 20 апр 2016, 14:51

не пустая и пробелов никаких нет...

Ariki
Гуру
Сообщения: 730
Зарегистрирован: 12 янв 2011, 22:40
Проекты: 1
Репутация: 303
Ваше звание:

Re: Создание слоя точек из таблицы

Сообщение Ariki » 20 апр 2016, 15:19

Можно импортировать как таблицу и выполнить
Геоалгоритмы QGIS -> Инструменты создания векторных объектов -> Points layer from table

Донецков
Гуру
Сообщения: 3051
Зарегистрирован: 19 май 2010, 19:44
Репутация: 188

Re: Создание слоя точек из таблицы

Сообщение Донецков » 21 апр 2016, 13:30

Спасибо, но "точечный слой из таблицы" создает точечный слой, в котором нет графических примитивов и нет ни одной записи в семантике :( ...

axinax
Интересующийся
Сообщения: 27
Зарегистрирован: 22 авг 2015, 01:01
Репутация: 1

Re: Создание слоя точек из таблицы

Сообщение axinax » 25 авг 2016, 12:11

ИМХО это связано с кодировками, у меня такая же проблема на 16 версии. Из csv файла, который был сделан в Либрофисе, графические объекты не экспортируются. Костыль такой придумал, просто меняю расширение на txt - все норм. Кстати, файл не из Либр, а сохраненный из ФайнРидера через Wine.
Ось Линукс Минт

Игорь Белов
Гуру
Сообщения: 1600
Зарегистрирован: 04 янв 2011, 22:00
Статьи: 12
Проекты: 1
Репутация: 996
Откуда: Казань

Re: Создание слоя точек из таблицы

Сообщение Игорь Белов » 25 авг 2016, 18:35

Постоянно приходится импортировать файлы CSV. Нет проблемы. Как в 2.14.1, так и в 2.16, под Windows и под Ubuntu точки создаются. С разными кодировками файлов CSV, созданных в разных программах, LibreOffice в том числе, и расширения никак не влияют на результат.

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

axinax
Интересующийся
Сообщения: 27
Зарегистрирован: 22 авг 2015, 01:01
Репутация: 1

Re: Создание слоя точек из таблицы

Сообщение axinax » 26 авг 2016, 17:38

Вот два файла: csv- получен при распознавании через FineReader на Wine и сохранен как xls, потом в ЛибрКалк подправлен и сохранен как csv. В QGIS импортируется без точек, просто как таблица. TXT- просто поменял расширение (нет для конкретно этого файла - открыл в текстовике и пересохранил)
Вложения
zd103P.txt
(374 байт) 55 скачиваний
zd103P.csv
(374 байт) 63 скачивания

Игорь Белов
Гуру
Сообщения: 1600
Зарегистрирован: 04 янв 2011, 22:00
Статьи: 12
Проекты: 1
Репутация: 996
Откуда: Казань

Re: Создание слоя точек из таблицы

Сообщение Игорь Белов » 26 авг 2016, 20:18

Начнём с настроек систем координат:
[Установки] → [Параметры…] → [Системы координат] → [Система координат для новых слоёв]
Предлагаются варианты:
  • запросить СК
  • использовать СК проекта
  • использовать СК по умолчанию
Обычно я выбираю второй. Давайте ради наглядности выберем первый: для новых слоёв и слоёв с неизвестной СК спрашивать СК.

Откроем файл zd103P.csv в текстовом редакторе.
1324991.63,535201.95
1324967.96,535186.9
1324963.96,535192.8
Так. Разделитель полей запятая, разделитель десятичных разрядов точка. Все символы из ASCII, так что кодировка не имеет значения. Строка заголовков отсутствует. Координаты в метрах, вероятно, в МСК-?? зона 1.

Запускаем открытие слоя из текстового файла.
img_20160826_194753.png
Диалог
img_20160826_194753.png (23.98 КБ) 3095 просмотров
Выбираем файл. На кодировку в данном случае внимания не обращаем. Подходит вариант разделителей "Запятые (CSV)", однако в варианте "Другие разделители" можно выбрать нужный явно. Ну и не путаем координаты X и Y. Жмём OK. Получаем диалог выбора системы координат (привет от настроек), выбираем МСК-?? зона 1 и любуемся точками на карте.
Вложения
img_20160826_200711.png
Точки на карте
img_20160826_200711.png (26.22 КБ) 3095 просмотров

axinax
Интересующийся
Сообщения: 27
Зарегистрирован: 22 авг 2015, 01:01
Репутация: 1

Re: Создание слоя точек из таблицы

Сообщение axinax » 30 авг 2016, 12:42

"Откроем файл в текстовом редакторе", для чистоты эксперимента вот этого делать то как раз и не надо было.
Сейчас попробовал загрузить файл csv на домашнем компьютере: ось Ubuntu16, QGIS 12.1 - все нормально загрузилось. Вывод: этот баг всплывает в такой связке: Linux Mint Rose, QGIS 16, LibreOffice 5.
Может у кого-нибудь стоит Ubuntu 16 (или другой дистрибутив линукс) и Qgis 16, пусть попробует загрузить файл csv.
Процедура импорта написана на С++? Он типозависим. Может быть по какой-то причине при импорте процдура воспринимает значения из столбцов, как текст? Сам же и ответил на этот вопрос, конечно, при чтении из текстового файла все будет string, по-любому должно быть преобразование типов. Но почему-то в некоторых случаях оно не срабатывает.

axinax
Интересующийся
Сообщения: 27
Зарегистрирован: 22 авг 2015, 01:01
Репутация: 1

Re: Создание слоя точек из таблицы

Сообщение axinax » 30 авг 2016, 12:55

To Игорь Белов. У Вас стоит QGIS 14 и, судя по пути файла, какой-то Linux. Может быть баг в Qgis16?

Игорь Белов
Гуру
Сообщения: 1600
Зарегистрирован: 04 янв 2011, 22:00
Статьи: 12
Проекты: 1
Репутация: 996
Откуда: Казань

Re: Создание слоя точек из таблицы

Сообщение Игорь Белов » 30 авг 2016, 14:44

В QGIS 2.16 под Windows работает:
img20160830143427.png
img20160830143427.png (21.21 КБ) 3010 просмотров
LibreOffice — мой единственный офисный пакет. И от него в данном случае не может ничего зависеть. CSV-файл можно внимательно просмотреть в текстовом редакторе, — текстовый файл и в Африке текстовый, чем его ни создавай.

Ariki
Гуру
Сообщения: 730
Зарегистрирован: 12 янв 2011, 22:40
Проекты: 1
Репутация: 303
Ваше звание:

Re: Создание слоя точек из таблицы

Сообщение Ariki » 30 авг 2016, 16:10

axinax писал(а):Может быть по какой-то причине при импорте процдура воспринимает значения из столбцов, как текст?
А в системной локали десятичный разделитель запятая или точка?

Игорь Белов
Гуру
Сообщения: 1600
Зарегистрирован: 04 янв 2011, 22:00
Статьи: 12
Проекты: 1
Репутация: 996
Откуда: Казань

Re: Создание слоя точек из таблицы

Сообщение Игорь Белов » 30 авг 2016, 16:21

Ariki писал(а):А в системной локали десятичный разделитель запятая или точка?
Если я правильно понимаю, это неважно: в диалоге видно, как интерпретируются колонки данных.

axinax, не сочтите за труд ответить на такие вопросы:
  • Вы выбрали пункт "Запрашивать CRS" в настройках для новых слоёв и слоёв с неопределёнными CRS?
  • В процессе импорта CSV появляется ли диалог выбора CRS?
  • После импорта появляется ли сообщение в цветной полоске в верху карты? Что там пишут?

axinax
Интересующийся
Сообщения: 27
Зарегистрирован: 22 авг 2015, 01:01
Репутация: 1

Re: Создание слоя точек из таблицы

Сообщение axinax » 30 авг 2016, 18:33

Да какой труд, сам хочу разобраться.
Когда я заметил этот баг, у меня стояло "Запрашивать систему координат", естественно, что после импорта файла csv диалога выбора системы координат не выскакивало. Что, и появлялось ли вообще, в этой полоске - не помню (сейчас работаю дома, где таких багов нет).
А насчет локали - в этом что-то есть. По умолчанию в системе стоит русская локаль, но в ЛибрКалке я менял локаль, чтобы десятичный разделитель был точкой. Смена локали как раз совпала с обновлением Qgis. Я бы уже поставил на домашний ноут обновления Qgis и посмотрел как будет работать связка Ubuntu16+QGIS16, но пакентный менеджер на Убунте чето глючит, не хочет ставить обновления из других (не Убунту) репозиториев (хотя все разрешающие галки включены)

Ответить

Вернуться в «Ошибки QGIS»

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя