Работа с векторными данными при помощи OGR и Python
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 18 апр 2013, 11:24
- Репутация: 0
Re: Работа с векторными данными при помощи OGR и Python
После ввода import osgeo.ogr as ogr
Выдает сообщение:
Traceback (most recent call last):
File "<stdin>", line 1, in ?
ImportError: No module named osgeo.ogr
А если ввести сразу ogrData = ogr.Open( "C:\Users\Ильмир\shape\boundary-polygon.shp", False )
То это пишет:
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "C:\PROGRA~1\FWTOOL~1.7\pymod\ogr.py", line 124, in Open
raise OGRError, 'Unable to open: ' + filename
ogr.OGRError: Unable to open: C:\Users\Ильмир\shapoundary-polygon.shp
Выдает сообщение:
Traceback (most recent call last):
File "<stdin>", line 1, in ?
ImportError: No module named osgeo.ogr
А если ввести сразу ogrData = ogr.Open( "C:\Users\Ильмир\shape\boundary-polygon.shp", False )
То это пишет:
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "C:\PROGRA~1\FWTOOL~1.7\pymod\ogr.py", line 124, in Open
raise OGRError, 'Unable to open: ' + filename
ogr.OGRError: Unable to open: C:\Users\Ильмир\shapoundary-polygon.shp
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 18 апр 2013, 11:24
- Репутация: 0
Re: Работа с векторными данными при помощи OGR и Python
Это я делал через FWTools Shell. Потом попробовал через OSGeo4W. После ввода
import osgeo.ogr as ogr
ogrData = ogr.Open( "C:\Users\Ильмир\shape\boundary-polygon.shp")
if ogrData is None:
print "ERROR: open failed"
Вывел ERROR: open failed
import osgeo.ogr as ogr
ogrData = ogr.Open( "C:\Users\Ильмир\shape\boundary-polygon.shp")
if ogrData is None:
print "ERROR: open failed"
Вывел ERROR: open failed
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 18 апр 2013, 11:24
- Репутация: 0
Re: Работа с векторными данными при помощи OGR и Python
А могут быть проблемы с установкой, может что-то несовместимо? И ещё нужно ли изменять переменные среды?
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: Работа с векторными данными при помощи OGR и Python
Может быть всё, что угодно (как известно ). Как я понял, у вас одновременно установлены и FWTools, и OSGeo4W?ilmir35 писал(а):А могут быть проблемы с установкой, может что-то несовместимо? И ещё нужно ли изменять переменные среды?
Редактор материалов, модератор форума
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 18 апр 2013, 11:24
- Репутация: 0
Re: Работа с векторными данными при помощи OGR и Python
Да, сначала я установил FWTools и пробовал работать с ним,но не получилось. Потом я наткнулся на эту статью и всё сделал как там.
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 18 апр 2013, 11:24
- Репутация: 0
Re: Работа с векторными данными при помощи OGR и Python
А что насчёт
ilmir35 писал(а):И ещё нужно ли изменять переменные среды?
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: Работа с векторными данными при помощи OGR и Python
Смотря для каких целей… Давайте пойдём по 2-му кругу: попытайтесь повторить что-то из статьи, используя только OSGeo4W. Что получится?ilmir35 писал(а):А что насчётilmir35 писал(а):И ещё нужно ли изменять переменные среды?
Редактор материалов, модератор форума
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 18 апр 2013, 11:24
- Репутация: 0
Re: Работа с векторными данными при помощи OGR и Python
Мне удалить все что установлено?
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 18 апр 2013, 11:24
- Репутация: 0
Re: Работа с векторными данными при помощи OGR и Python
Если не удалять, то результат вначале этой страницы.
-
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 793
- Ваше звание: званий не имею
- Откуда: Москва
Re: Работа с векторными данными при помощи OGR и Python
Можно, конечно, удалить FWTools и OSGeo4W, затем заново установить OSGeo4W и попробовать ещё раз проделать действия из статьи. Но будет ли в этом смысл, не понятно.ilmir35 писал(а):Мне удалить все что установлено?
Редактор материалов, модератор форума
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 18 апр 2013, 11:24
- Репутация: 0
Re: Работа с векторными данными при помощи OGR и Python
ок, спасибо вам)
-
- Интересующийся
- Сообщения: 26
- Зарегистрирован: 18 апр 2013, 11:24
- Репутация: 0
Re: Работа с векторными данными при помощи OGR и Python
Всем привет. У меня небольшой вопрос. В статье показалось как вывести список полей объекта:
feat = layer.GetNextFeature()
featDef = layer.GetLayerDefn() # схема (таблица атрибутов) слоя
while feat is not None:
for i in range( featDef.GetFieldCount() ): # проходим по всем полям
fieldDef = featDef.GetFieldDefn( i ) # получаем i-тое поле
print "Field name", fieldDef.GetNameRef() # и выводим информацию
print "Field type", fieldDef.GetType()
print "Field value", feat.GetFieldAsString(i)
feat = layer.GetNextFeature() # переходим к следующему объекту
Я хотел вместо вывода на print записать эти поля в файл. Файл открыл так:
file = open('c:/data/1.txt', 'w')
Я изменил пример: file.write( "Field name", fieldDef.GetNameRef())
Но не записывает, не могли бы помочь мне?
feat = layer.GetNextFeature()
featDef = layer.GetLayerDefn() # схема (таблица атрибутов) слоя
while feat is not None:
for i in range( featDef.GetFieldCount() ): # проходим по всем полям
fieldDef = featDef.GetFieldDefn( i ) # получаем i-тое поле
print "Field name", fieldDef.GetNameRef() # и выводим информацию
print "Field type", fieldDef.GetType()
print "Field value", feat.GetFieldAsString(i)
feat = layer.GetNextFeature() # переходим к следующему объекту
Я хотел вместо вывода на print записать эти поля в файл. Файл открыл так:
file = open('c:/data/1.txt', 'w')
Я изменил пример: file.write( "Field name", fieldDef.GetNameRef())
Но не записывает, не могли бы помочь мне?
- SS_Rebelious
- Гуру
- Сообщения: 1304
- Зарегистрирован: 24 фев 2009, 16:51
- Репутация: 99
- Ваше звание: GIS pro-fan
- Откуда: Lahti / Газ-ПУТИНбург
- Контактная информация:
Re: Работа с векторными данными при помощи OGR и Python
Во-первых, когда задаёте подобные вопросы, хотелось бы подробностей: например, выдаёт ли скрипт какую-либо ошибку, а также, уверены ли вы, что скрипт исправно работает до команды write?ilmir35 писал(а):Я хотел вместо вывода на print записать эти поля в файл. Файл открыл так:
file = open('c:/data/1.txt', 'w')
Я изменил пример: file.write( "Field name", fieldDef.GetNameRef())
Но не записывает, не могли бы помочь мне?
Во-вторых, хорошим тоном считается прочтение мануалов перед тем, как задать вопрос. Гляньте вот сюда: буржуйским по белому написано, что команда write() принимает аргумент типа string, а вы что ему суёте? Что-то на меня напала вредность и корректный код приводить не буду - сами подумайте, что надо сделать. Вам это даже полезнее будет.
Look for something long enough, and you will find it. Look for something without understanding, and it will find you...
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!
"All paid jobs absorb and degrade the mind." Aristotle
If you take 1 step towards freedom it'll take 2 steps towards you!
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 32 гостя