ArcGIS Desktop을 사용하여 X 거리 내에서 N 포인트의 클러스터 찾기?


12

두 가지 클러스터 분석 방법을 시도했습니다.

...하지만 다음 세 가지 매개 변수가있는 사양을 충족하지 않습니다.

  • 포인트 기능 세트
  • 클러스터 내 N 점
  • 볼 X 거리 밴드

예를 들어 "각 군집이 50 미터 내에 10 점을 갖는 점을 찾으십시오"또는 그 영향이 있습니다.

ArcGIS 10에는 위에서 링크 한 두 가지 도구가 있지만 클러스터 부분 내의 N 지점을 다루지 않는 것 같습니다.

ArcGIS의 다른 도구로 요구 사항을 충족 할 수 있습니까? 클러스터 분석이라고 부르는 것이 특정 클러스터링 유형입니까?

다른 응용 프로그램에서이 버전을 사용했지만 ArcGIS 내에서 도구를 사용하고 싶었습니다.


"내 지식없이 고객에게 약속했다"... 나는 당신의 고통을 느낀다. arcobjects 솔루션이 허용됩니까?
Kirk Kuykendall

클러스터를 생성 한 다음 기준에 맞지 않는 클러스터를 처리 할 수 ​​없습니까? 다시 말해 (이 분석에 경험이 부족하기 때문에 묻습니다), 분석 전에 세 번째 기준이 주어지면 클러스터가 변경 됩니까?
Nathanus

@Kirk Kuykendall. arcObjects는 arcgis 10 서버를 통해 지오 프로세싱 서비스로 노출되어야하므로 가능하지 않을 수 있습니다.
Hath

클러스터는 원을 기준으로해야합니까, 아니면 직사각형 일 수 있습니까? 동일한 50x50 상자에있는 모든 포인트의 해시 코드가 동일하도록 좌표에서 해시를 만드는 것이 쉽습니다.
Kirk Kuykendall

@ 커크-내가 생각하는 원이어야합니다.
Hath

답변:


10

버퍼 도구를 사용하여 점을 공차로 버퍼링하고 용해하여 각 클러스터에 대해 단일 다각형을 만든 다음 결합을 사용하여 클러스터의 점 수를 계산하십시오.

그런 다음 클러스터 영역과 포인트 수 사이의 비율을 사용하여 매개 변수를 적용하십시오.


+1이 접근 방식은 효과가 있지만 솔루션의 영역이 어디인지는 알 수 없습니다.
whuber

면적 / 카운트는 클러스터 내 밀도를 측정합니다. 이것은 클러스터로 간주되어서는 안되는 선형 체인 점을 제거하는 데 도움이됩니다.
Matthew Snape

2
OK, 그러나 문제 진술은 그것을 요구하지 않습니다. 예를 들어 "50 미터 내 10 점"만 요청합니다. 포인트를 50/2 = 25 미터로 버퍼링하면 10 개 이상의 겹침이있는 곳이 그러한 클러스터의 중심으로 적합합니다. 끝난!
whuber

'결합'을 의미 할 때 공간적으로 조인을 의미합니까?
Hath

2

이는 많은 어려움없이 ArcObject를 사용하여 달성 할 수 있습니다.

맵 토폴로지를 작성 하고 포인트 피쳐 클래스 를 추가하십시오. 클러스터 거리 (50)를 기준으로 클러스터 공차를 설정하고 캐시를 빌드하십시오 .

maptopology.cache.nodes의노드 를 반복 하십시오 . ITopologyNode.Parents.Count> 10이면 필요한 작업을 수행하십시오.

색상이 클러스터의 포인트 피처 수를 기반으로하는 심볼로 각 클러스터 포인트를 그리는 사용자 정의 레이어와 비슷한 작업을 수행했습니다. 기능이 메모리에 캐시되므로 성능이 만족 스러웠습니다. 캐시를 다시 작성하는 것은 비용이 많이 듭니다.

여기에 게시 된 코드와 유사합니다 .


파이썬에서 가능할까요?
Hath

나는 생각하지 않습니다. arcobjects sdk에 익숙하지 않으며 그것을 사용하기위한 라이센스 요구 사항을 완전히 확신하지 못합니다.
Hath

2

첫 번째 점으로 이동 한 다음 재귀 함수를 만들어 거리 내의 점을 확인하고 그 거리에서 점을 찾고 동일한 동작을 수행하는 등의 작업을 수행하십시오.

방금 특정 조항에 맞는 일련의 포인트를 찾아야한다는 점에서 비슷한 문제를 해결했습니다. 8 셀 (N, NW, W, SW, S, SE, E, NE) 내에 연결된 포인트가 있는지 확인하기 위해 재귀 함수를 작성하고 해당 포인트에 대해 동일한 함수를 호출했습니다. 반환 된 목록에 x 점이 포함되어 있으면 주위에 다각형을 집계합니다.


1

OpenSource Software 만 사용하기 때문에 ArcGIS에 대한 사용 정보가 없습니다. 그러나 나는 이것이 Openlayers로 달성 될 것이라고 생각합니다. 여기에서 찾을 수있는 클러스터 전략 예가 있습니다. http://openlayers.org/dev/examples/strategy-cluster.html


-1 OP가이를 수행하는 arcgis 방식을 요구하고 있습니다. OpenLayers 방식을 제공하는 것이 실제로 도움이되지는 않습니다.
Nathan W

2
그러나 openlayers 접근은 그가 arcgis에서 그것을 구현하는 방법을 찾는 것을 도울 수 없었습니까 ??
1amtoo1337

1
나는 의견에 동의하고 당신의 접근 방식을 좋아합니다 : 종종 우리는 아이디어와 영감을 위해 안락 지대 밖을 봐야합니다. 그러나이 예제가 여기에서 묻는 특정 질문과 어떻게 연결되어 있는지 설명 할 수 있다면 답장이 더 유용하다고 생각합니다. 질문과 예가 "클러스터"라는 단어를 공유하지만 동일한 의미로 사용하거나 충분히 유사한 문제를 해결하는 것은 분명하지 않습니다.
whuber

나는 이것을하는 오픈 소스 방법을 찾고 있었을 때 이것을 찬성했으며 게시물이 arcgis를 원했지만 다른 GIS 시스템의 솔루션이 도구를 사용하여 선택한 소프트웨어에서 솔루션을 찾는 데 도움이 될 수 있음을 종종 발견했습니다 일반적이지 않습니다.
GeorgeC
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.