Страница 1 из 1
					
				Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 09 фев 2010, 01:50
				 alonsa
				Добрый день!
Подскажите, пожалуйста, как посчитать количество объектов внутри заданного радиуса вокруг другого объекта в arcgis? например, есть список магазинов, нужно посчитать количество конкурентов радиусе 1 км и количество населения в радиусе 1 км для каждого магазина. Жители привязаны к слою с домами, как атрибут, конкуренты и магазины отдельные слои. Как можно сделать это наиболее простым способом ? В результате хотелось бы получить два новых столбца со значениями для каждого магазина.
Спасибо.
			 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 09 фев 2010, 10:55
				 nadiopt
				1. Создаем буферные зоны вокруг нужных объектов
http://webhelp.esri.com/arcgisdesktop/9 ... nalysis%29
например магазинов
2. Пересекаем этот буфер жителями - получаем новый слой количества жителей в буфере
http://webhelp.esri.com/arcgisdesktop/9 ... nalysis%29
результирующий слой будет количество жителей в буферной зоне магазина
 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 10 фев 2010, 02:19
				 alonsa
				Спасибо! а с конкурентами то же самое ? и как просмотреть информацию по новому слою с жителями? т.е. где можно увидеть число жителей на буферную зону?
			 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 10 фев 2010, 09:02
				 nadiopt
				с конкурентами то же самое
инфу можно увидеть инструментом "инфо" (такой синенький кружочек с буквой i) и открыв таблицу атрибутов новго слоя
			 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 10 фев 2010, 10:22
				 alonsa
				Спасибо  

 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 10 фев 2010, 10:43
				 nadiopt
				получается что-нибудь? у меня просто арки нет сейчас под рукой, может где-то неточности...
			 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 11 фев 2010, 17:08
				 self-improving
				nadiopt, извините, но мне кажется, что 
Intersect - не лучший вариант   
В этом случае (как и при всяком другом оверлее из TBX) объекты так или иначе разбиваются на части. А т.к. контуры домов резать явно не нужно (подъезды 1-3 ходят в магазин А, подъезды 4-7 - в магазин Б?..), то результат немного не тот   

 Точнее, понадобится еще пара манипуляций, чтобы вышло то, что надо.
Я бы предложила 
Spatial Join.
1. Как и сказала 
nadiopt, первым делом строятся буферы вокруг магазинов (получаем слой 
Shops_Buffer).
2. Делаем 
Spatial Join для 
Shops_Buffer с 
Конкурентами. В итоге получается столбец 
Count - кол-во конкурентов, приходящихся на километровую "зону влияния" каждого магазина.
3. Делаем 
Spatial Join для 
Shops_Buffer с 
Домами (=Жителями). При этом для атрибута 
Число жителей ставим галочку напротив Sum (Сумма). В итоге получается столбец с суммой жителей из всех домов, которые пересеклись с буферами.
4. Делаем 
Join для исходного слоя 
Магазины с результатами пунктов 2 и 3 и "копируем" (=вычисляем) столбцы 
Число конкурентов и 
Число жителей. 
Join можно убирать  =)
Пункты 2 и 3 можно как из ToolBox'a запускать, так и через контекстное меню (правой кнопкой на слое 
Shops_Buffer -> 
Joins & Relates -> 
Join).
Ну можно еще, чтоб не плодить лишние файлы, результат пункта 2 использовать как входной в пункт 3.
 
			 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 11 фев 2010, 17:37
				 nadiopt
				спасибо за более изящное решение, возьму на заметку
			 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 11 фев 2010, 18:42
				 self-improving
				nadiopt писал(а):спасибо за более изящное решение, возьму на заметку
Надеюсь, без обид?   
 
 
просто через Intersect не получилось, и стало интересно, как бы еще можно это сделать...  )
 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 12 фев 2010, 11:56
				 nadiopt
				на что тут обижаться? я просто не сообразила, что дома- полигональные объекты, поскольку обычно делаю интерсект чтобы выяснить какие деревья относятся к какой части парка. а дерево - объект точечный:)
			 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 20 авг 2020, 08:42
				 FFF
				Подскажите пожалуйста, а можно тоже самое сделать в qgis или mapinfo, но в определенном диапазоне радиусов, например в радиусе от 500м до 1000м?
			 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 20 авг 2020, 08:52
				 gamm
				FFF писал(а): ↑20 авг 2020, 08:42можно тоже самое сделать в qgis или mapinfo
 
можно, сначала построив кольцевой буфер (в Мапинфе такое есть, в QGIS вроде прямого нет, нужно использовать алгебру полигонов - из большего вычесть меньший), потом запрос.
 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 20 авг 2020, 08:55
				 Игорь Белов
				В QGIS есть плагин Multi Ring Buffer
			 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 20 авг 2020, 08:56
				 FFF
				gamm писал(а): ↑20 авг 2020, 08:52можно, сначала построив кольцевой буфер (в Мапинфе такое есть, в QGIS вроде прямого нет, нужно использовать алгебру полигонов - из большего вычесть меньший), потом запрос.
 
Кольцевой буфер имеете в виду обычный с одним радиусом или концентрический?
Если концентрический, то mapinfo строит его 1 на все объекты, а необходимо, чтобы был отдельный буфер от каждого объекта.
И в как запрос составить?
 
			
					
				Re: Подсчет количества объектов внутри заданного радиуса Arcgis
				Добавлено: 20 авг 2020, 09:55
				 gamm
				Типа такого, obj intersects big and obj not intersects small, синтаксис в документации