Анимация изолиний

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Ответить
HomBro
Интересующийся
Сообщения: 31
Зарегистрирован: 25 ноя 2017, 20:31
Репутация: 1
Откуда: Уфа

Анимация изолиний

Сообщение HomBro » 28 янв 2019, 00:20

У меня есть набор точек, в каждой из которых есть набор значений распределенных по времени. Мне надо по этим данным построить анимацию карт изолиний. Как это лучше реализовать? Я нашёл вариант через создание анимации из группы растров, но эти растры надо ещё построить, можно это как-то сделать автоматически, чтобы по заданному промежутку времени строился растр с изолиниями?

lam
Гуру
Сообщения: 745
Зарегистрирован: 01 авг 2012, 13:55
Репутация: 177

Re: Анимация изолиний

Сообщение lam » 28 янв 2019, 08:52

Выложите фрагмент набора точек.

HomBro
Интересующийся
Сообщения: 31
Зарегистрирован: 25 ноя 2017, 20:31
Репутация: 1
Откуда: Уфа

Re: Анимация изолиний

Сообщение HomBro » 28 янв 2019, 09:14

lam, они в csv формате, вот так примерно это выглядит

Код: Выделить всё

datetime,lat,long,val
2015-03-16 00:00:00.000,-65.25,295.73,17.929933757319862
2015-03-16 00:01:00.000,-65.25,295.73,18.17380279070113
2015-03-16 00:02:00.000,-65.25,295.73,18.295592884252954
2015-03-16 00:03:00.000,-65.25,295.73,18.468661056194666
2015-03-16 00:04:00.000,-65.25,295.73,18.468661056194666
2015-03-16 00:05:00.000,-65.25,295.73,19.58856446693438
2015-03-16 00:06:00.000,-65.25,295.73,21.244293602118706
2015-03-16 00:07:00.000,-65.25,295.73,22.728929120977735
2015-03-16 00:08:00.000,-65.25,295.73,23.25100647971387
2015-03-16 00:09:00.000,-65.25,295.73,22.855304139732542
2015-03-16 00:10:00.000,-65.25,295.73,22.378077928280653
2015-03-16 00:11:00.000,-65.25,295.73,22.106409882096404
2015-03-16 00:12:00.000,-65.25,295.73,22.006223162442755
2015-03-16 00:13:00.000,-65.25,295.73,21.714402787800417
2015-03-16 00:14:00.000,-65.25,295.73,21.545331334647123
2015-03-16 00:15:00.000,-65.25,295.73,21.69872812677553
2015-03-16 00:16:00.000,-65.25,295.73,22.089404438119043
Сначала время, потом широта и долгота обсерватории и значения, всего 10 обсерваторий, данные за 3 дня, интервал минута

lam
Гуру
Сообщения: 745
Зарегистрирован: 01 авг 2012, 13:55
Репутация: 177

Re: Анимация изолиний

Сообщение lam » 29 янв 2019, 20:09

1. Импорт слоя точек в БГД , например *.gdb
2. Трансформация слоя точек в метрическую систему координат
3. Делаете выборки из слоя точек, по заданному промежутку времени, в отдельные слои точек
4. Интерполируете точки в растр
5. Строите изолинии по растру

Аватара пользователя
nikost
Участник
Сообщения: 96
Зарегистрирован: 16 июл 2015, 15:21
Репутация: 29
Откуда: Санкт-Петербург

Re: Анимация изолиний

Сообщение nikost » 29 янв 2019, 20:18

Зачем растр, если даже поле времени в исходных данных есть.
Попробуйте
1. Сконвертить данные (в shp, gdb)
2. Построить изолинии
3. Задать время по соответствующему полю
http://desktop.arcgis.com/ru/arcmap/10. ... zation.htm
4. Создать временную анимацию и экспортировать

HomBro
Интересующийся
Сообщения: 31
Зарегистрирован: 25 ноя 2017, 20:31
Репутация: 1
Откуда: Уфа

Re: Анимация изолиний

Сообщение HomBro » 25 фев 2019, 16:52

nikost, можно про 4 пункт подробнее? Я уже делал ползунок времени, значение в точках меняется при перемещении ползунка. Но данные у меня только в этих точках, поэтому сначала надо данные проинтерполировать и потом уже строить изолинии, а вот как это сделать, чтобы это всё происходило при перемещении ползунка?

Аватара пользователя
nikost
Участник
Сообщения: 96
Зарегистрирован: 16 июл 2015, 15:21
Репутация: 29
Откуда: Санкт-Петербург

Re: Анимация изолиний

Сообщение nikost » 25 фев 2019, 20:25

То есть вы хотите, чтобы изолинии строились "на лету" при перемещении ползунка?

Я-то думал, что изолинии для каждого времени построить и их уже анимировать.
Получить значения всех дат > цикл [выбрать точки по дате > интерполяция > изолинии > экспорт (или присоединение с атрибутом даты)]

HomBro
Интересующийся
Сообщения: 31
Зарегистрирован: 25 ноя 2017, 20:31
Репутация: 1
Откуда: Уфа

Re: Анимация изолиний

Сообщение HomBro » 25 фев 2019, 21:06

nikost, а как работать с циклами в arcmap? У меня просто опыта работы с ним мало.

Аватара пользователя
nikost
Участник
Сообщения: 96
Зарегистрирован: 16 июл 2015, 15:21
Репутация: 29
Откуда: Санкт-Петербург

Re: Анимация изолиний

Сообщение nikost » 26 фев 2019, 12:23

Python или model builder, без этого никак...
Получить список дат и как-нибудь так:

Код: Выделить всё

for date in datesList:
   rasterOut = "C/output/raster_" + str(date)
   contourOut =  "C/output/contout_" + str(date)
   arcpy.SelectLayerByAttribute_management ("точки", "New_selection",  'дата = (%s)' %date )
   arcpy.TopoToRaster_3d ("точки", rasterOut)
   arcpy.Contour_3d ("точки", contourOut )

HomBro
Интересующийся
Сообщения: 31
Зарегистрирован: 25 ноя 2017, 20:31
Репутация: 1
Откуда: Уфа

Re: Анимация изолиний

Сообщение HomBro » 26 фев 2019, 17:14

nikost, то есть строиться новый растр будет по выбранным строкам в таблице атрибутов? И всё что нужно - это выбирать строки с одинаковой датой? То есть если я буду интерполировать с помощью ОВР, то алгоритм примерно такой: создаю из данных в файле csv шейп файл points.shp, потом запускаю цикл, выбираю строки по дате и времени, а потом использую метод Idw и в качестве входного точечного объекта передаю points.shp ну и поле значений и создастся растр по выбранным строкам в этой итерации цикла? Всё верно? Просто опыт работы с python есть, а вот с ArcGis вообще практически не работал.

Аватара пользователя
nikost
Участник
Сообщения: 96
Зарегистрирован: 16 июл 2015, 15:21
Репутация: 29
Откуда: Санкт-Петербург

Re: Анимация изолиний

Сообщение nikost » 28 фев 2019, 11:18

HomBro писал(а):
26 фев 2019, 17:14
Просто опыт работы с python есть
Ну если опыт есть, то трудностей не должно возникнуть.

Суть сводится к тому, что каждый инструмент из тулбокса аркгиса можно заскриптовать питоном (т.е. выделение, создание растра из точек, экспорт и т.д.), и потом уже циклить как заблогорассудится.

Понадобится, правда ещё лицензия на 3d Analyst, но это уже совсем другая история

HomBro
Интересующийся
Сообщения: 31
Зарегистрирован: 25 ноя 2017, 20:31
Репутация: 1
Откуда: Уфа

Re: Анимация изолиний

Сообщение HomBro » 08 мар 2019, 23:15

nikost, спасибо, уже сделал, вот только не ожидал, что столько времени это всё будет занимать, примерно сутки на всё)

Ответить

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

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

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