Создать карту из таблицы
Добавлено: 03 окт 2019, 14:21
Добрый день!
Вопрос собственно простой.
Как одним махом превратить прямоугольную таблицу с координатами и данными в карту с точками и атрибутами.
Сейчас имею, условно работающим что-то типа такого (иллюстрация на уровне идеи)
т.е. на мой неискушенный взгляд, фактически последовательный перебор всех значений. Если сюда попытаться интегрировать что-то типа такого:
короче, на MapIfo такой фокус не проходил из-за крайне медленной работы.
Думаю здесь будет тоже самое.
Собственно вопрос, как, какими стредствами можно заставить Qgis прревраить целиком массив данных в карту не прибегаю к поэлементному перебору.
Кто сталкивался или решал такие задачи не стесняемя, приветствуются любые идеи.
Спасибо.
Вопрос собственно простой.
Как одним махом превратить прямоугольную таблицу с координатами и данными в карту с точками и атрибутами.
Сейчас имею, условно работающим что-то типа такого (иллюстрация на уровне идеи)
Код: Выделить всё
q = QSqlQuery(db)
q.exec_("select * from MyTable")
while(q.next()):
ATR1 = q.value(1)
ATR2 = q.value(2)
............
LAT = float(q.value(78))
LON = float(q.value(79))
Код: Выделить всё
q = QSqlQuery(db)
q.exec_("select * from MyTable")
#---------------------------------------------------------------------
layer = QgsVectorLayer('Point?crs=epsg:4326', 'MyPoint' ,'memory')
pr = layer.dataProvider()
pt = QgsFeature()
#---------------------------------------------------------------------
while(q.next()):
ATR1 = q.value(1)
ATR2 = q.value(2)
............
LAT = float(q.value(78))
LON = float(q.value(79))
#---------------------------------------------------------------------
point1 = QgsPointXY(LAT,LON)
pt.setGeometry(QgsGeometry.fromPointXY(point1))
pr.addFeatures([pt])
layer.updateExtents()
#---------------------------------------------------------------------
QgsProject.instance().addMapLayer(layer)
Думаю здесь будет тоже самое.
Собственно вопрос, как, какими стредствами можно заставить Qgis прревраить целиком массив данных в карту не прибегаю к поэлементному перебору.
Кто сталкивался или решал такие задачи не стесняемя, приветствуются любые идеи.
Спасибо.