효과적인 열지도를 작성 하시겠습니까?


65

ArcGIS, QGIS, Grass 및 / 또는 GVSIG 사용 :

  • 효과적인 열지도를 만드는 데 필요한 도구와 프로세스에는 어떤 것이 있습니까?
  • 플러그인은 무엇입니까?
  • 주요 데이터 요구 사항은 무엇입니까?
  • 기존 히트 맵의 결함에는 어떤 것이 있습니까?
  • 히트 맵이 효과적으로 해결할 수없는 문제는 무엇입니까?
  • 열지도를하지 않는 방법?
  • 데이터 표현을위한 히트 맵보다 더 나은 대안 (같은 맥락에서)이 있습니까?

당신이 지정된 도구를 사용하지 않지만, 당신은뿐만 아니라이 파이썬 스크립트를 보라 할 수 있습니다 jjguy.com/heatmap
라덱

1
다쏘 키, "히트 맵"이 무슨 뜻인지 알겠 니? Wikipedia 는 그것이 값의 배열을 합친 것으로 생각하는 것 같습니다. 이것은 이 스레드의 모든 답글과 미묘하지만 중요 합니다. 이는 단순히 그리드 (또는 이미지) 기반 속성, 특히 포인트 데이터에서 그리드에 보간 된 속성의 맵을 의미한다고 가정합니다. 글 머리 기호에 대한 글 머리 기호에 대한 답변은 모두 다릅니다.
whuber

답변:


74

이 질문은 커뮤니티 위키 및 위키 잠김으로 변환되었습니다. 답변 목록을 찾는 질문의 예이므로 폐쇄되지 않도록하기 위해 인기가있는 것으로 보입니다. 특수한 경우로 취급해야하며이 사이트 또는 모든 Stack Exchange 사이트에서 권장되는 질문 유형으로 간주되어서는 안되지만 더 많은 콘텐츠를 제공하려면이 답변을 편집하여 자유롭게 수행하십시오. .


최소 두 가지 종류의 히트 맵이 있습니다.

  1. 점의 농도를 나타내는 히트 맵
  2. 속성 값의 분포를 나타내는 히트 맵

모든 방법에는 장단점이 있습니다. 자세히 설명하는 것이이 Q & A를 훨씬 넘어서는 것 같습니다.

QGIS와 GRASS에 대한 몇 가지 메소드와 함수를 나열하려고합니다.

포인트 농도

야생 동물, 차량 등의 움직임을 추적하는 경우 위치 메시지가 많은 지역을 평가하는 것이 유용 할 수 있습니다.

도구 : 예 : QGIS Heatmap 플러그인 (버전> 1.7.x에서 사용 가능) 또는 GRASS v.neighbors 또는 v.kernel

속성 값의 분포

여기서는 기본적으로 보간 방법에 대해 다소 이야기하고 있습니다. 방법은 다음과 같습니다.

  1. IDW

    구현에 따라 전역 (세트에서 사용 가능한 모든 점 사용) 또는 로컬 (점 수 또는 점과 보간 위치 사이의 최대 거리로 제한됨) 일 수 있습니다.

    도구 : QGIS 보간 플러그인 (글로벌), GRASS v.surf.idw 또는 r.surf.idw (로컬)

  2. 스플라인

    다시 한 번, 수많은 구현이 가능합니다. B- 스플라인이 인기가 있습니다.

    도구 : GRASS v.surf.bspline

  3. 크릭

    다양한 하위 유형의 통계 방법.

    도구 : GRASS v.krige (팁은 om_henner에게 감사) 또는 R 사용


1
kriging v.krige ( grass.osgeo.org/wiki/V.krige_GSoC_2009 )를 위한 GRASS를 통한 인터페이스가 있지만 여전히 R과 GRASS Wiki 페이지에 언급 된 다양한 R 패키지와 바인딩이 필요합니다.
om_henners

QGIS 2.8부터 포인트 레이어 용 히트 맵 렌더러가 있습니다. 새로운 데이터를 만들 필요가 없습니다.
Alexandre Neto

34

통계적으로 히트 맵을 수행하는 방법은 다음과 같습니다.

1) 포인트 특징을 통합하십시오 . 통합의 아이디어는 우연의 일치로 간주되는 포인트를 하나의 위치로 병합하는 것입니다. 나는 가장 가까운 이웃 분석을 사용하고 거기에서 적절한 값을 사용하고 싶습니다 . (예를 들어, 범죄 히트 맵을 수행 할 때 범죄를 지오 코딩 한 기본 소포 데이터 세트에 평균 1st 인접 이웃 을 사용합니다 ).

2) 이벤트를 수집하십시오 . 이렇게하면 모든 통합 포인트에 대한 공간 가중치가 생성됩니다. 예를 들어 단일 위치에 5 개의 이벤트가있는 경우 가중치가 5 인 한 지점이됩니다. 이는 다음 두 단계에서 필수적입니다. 풀링 된 이벤트에서 속성을 집계해야하는 경우, 즉 다른 이벤트의 가중치가 높으면 일대일 공간 조인을 사용할 수 있습니다 . '수집 이벤트'출력을 대상으로 사용하고 원래 통합 이벤트를 결합 기능으로 사용하십시오. 통합 맵에서 속성을 통계적으로 결합한 필드 맵 병합 규칙을 설정하십시오 (일반적으로 SUM과 함께 다른 통계를 사용할 수 있음).

3) Global Moran 's I를 사용하여 최대 공간 자기 상관을 결정 합니다. 그것이 말하는 것처럼, 전역 moran의 I을 다른 간격으로 실행하여 수행중인 분석에 적합한 규모로 공간 자기 상관의 피크 밴드를 결정하십시오. 수집 된 이벤트에서 가장 가까운 이웃을 다시 실행하여 moran의 I 테스트의 시작 범위를 결정할 수 있습니다. (예 : 가장 가까운 첫 번째 이웃에 최대 값 사용)

4) Getis-Ord Gi *를 실행하십시오 . moran의 I 분석을 기반으로 고정 거리 대역을 사용하거나 무차별 영역으로 고정 거리 대역을 사용하십시오. 수집 이벤트의 공간 가중치는 숫자 개수 필드입니다. 이렇게하면 세트의 각 이벤트 지점에 대한 z 점수가 표시됩니다.

5) Getis-Ord Gi *의 결과에 대해 IDW 를 실행하십시오 .

이 결과는 커널 밀도에서 얻는 것과 크게 다릅니다. 커널 밀도와 같이 클러스터링에 관계없이 값이 높은 위치가 아니라 높은 값과 낮은 값이 함께 클러스터링되는 위치를 보여줍니다.


20

히트 맵을 좋아하지만 종종 잘못 사용한다는 것을 알고 있습니다.

일반적으로 내가 본 것은 각 픽셀의 색상 이 포인트 모음에 적용된 역 거리 가중 함수 의 결과를 기반으로하는 프로세스 입니다. 지도에 겹치는 점 마커가 많을 때마다 히트 맵을 고려할 가치가 있다고 생각합니다.

다음은 웹 기반 API 입니다.

GeoChalkboard에는 좋은 튜토리얼이 있습니다 .

ArcGIS에서 IDW 를 사용할 수 있습니다 .


7
IDW는 데이터 수집 위치에 매우 민감합니다. 예를 들어 데이터가 군집화되면 수학적으로 비정상적인 문제가 생길 수 있습니다.
리드 경찰

@Reed Copsey 어떤 대안을 제안 하시겠습니까?
fmark

2
@fmark : 자연 이웃 / 삼각형 기반 접근, Kriging, 스플라인 / 최소 장력 등 IDW 대신 사용할 수있는 보간 루틴이 많이 있습니다.
Reed Copsey

@Reed 나는 열지도의 수학적 정확성에 대해 결코 걱정하지 않았습니다. 그러나 많은 상황에서 클러스터를 유용하게 통신한다고 생각합니다. 다음은 히트 맵으로 유용하게 렌더링 될 수있는 맵의 예입니다. www2.clustrmaps.com/counter/maps.php?url=http://clustrmaps.com
Kirk Kuykendall

2
나는 그들이 훌륭한 도구라고 생각합니다. 수학적 / 통계적 정확성은 의사 결정에 결과를 사용하는 경우에만 중요하지만 분포의 일반적인 의미를 전달하려면 IDW가 적합합니다. (수학적 문제로 인해 특히 군집간에 히트 맵 결과에서 큰 "비뚤어 짐"을 유발하는 군집 문제가 더 중요합니다.
Reed Copsey

12

간단한 히트 맵과 카운트 라인 생성을 위해 잔디 통합과 함께 QGis를 사용했습니다.

  1. 데이터 포인트로드
  2. 제한적인 모양로드 – 예 : 카운티 경계
  3. 잔디 맵셋 만들기
  4. 잔디 도구 상자를 열고 모듈 목록을 클릭하여 각 도구를 검색하십시오.
  5. 로드 v.in.ogr.qgis 때마다 클릭 기억, 모듈 및 지점 데이터와 경계 모양을 모두로드 뷰 출력을 같이 각각의 유용한 이름을 부여 - 각각에 대한 pointdatamaskshape
  6. v.to.rast 를 사용하여 maskshape 를 래스터로 변환 하여 마스크로 사용 하고 mapset에 추가합니다 – maskraster 와 같은 것으로 부릅니다 . 복잡한 다각형에는 시간이 걸릴 수 있습니다.
  7. r.mask 모듈을 로드하여 다음 조치를 버퍼 영역으로 제한하십시오.
  8. 실행 v.surf.rst 에서 보간 그리드 생산 pointdata을 - 보간을 수행에 대한 속성 필드와 해당 열을 선택하고, 같은 호출 rastersurface . 이것은 시간이 걸리고 열지도 용도로 사용되거나 3D 음영 처리 될 수있는 래스터를 생성하는 비트입니다.
  9. 잔디 도구 상자를 닫습니다
  10. GRASS 래스터를 입력으로 선택하는 GDAL Raster Contours 플러그인을 사용하십시오. 기본 레벨 값을 10으로 유지하고 윤곽 쉐이프 파일이 저장 될 출력 디렉토리를 선택하십시오. "속성 이름"을 확인하고 이름을 입력하십시오.

NB :이 작업을 수행하려면 데이터 세트가 동일한 투영에 있어야합니다!


4

이 문제에 대한 몇 가지 점을 제외 하고는이 질문에 크게 대답했다고 생각합니다.

히트 맵은 훌륭하지만 고전적인 결함과 문제는 해석에 있습니다. 범죄율 / 비율의 맵 (열 또는 기타)과 비교 한 범죄 이벤트의 히트 맵의 차이를 고려하십시오. 이벤트 히트 맵은 전체 이벤트 밀도를 식별하는 데 유용 할 수 있지만 위험 추정치로 보이지는 않지만 이러한 방식으로 해석되거나 오용되는 경우가 많습니다. 크기와 모양이 같은 지역에서 같은 수의 사건을 고려하지만 인구가 다른 지역에서는 범죄가 지역에 집중되어있을 수 있습니다. 그 지역에는 더 많은 사람들이 있기 때문일 수 있습니다. 또한 범죄와 같은 이벤트 데이터의 비율은 모델링하기 어려울 수 있습니다. 히트 맵 래스터를 생성하려면 인구 모델과 같은 이벤트가 필요할 수 있지만 여전히 정지하지는 않습니다.

두 번째 문제는 히트 맵이 단일 공간 규모를 고려하는 것으로 제한되며이 공간 규모 (예 : 커널 크기 또는 붕괴율)를 선택하는 것은 복잡하고 연구 목표에 따라 결정될 수 있지만 정당화되어야한다는 것입니다 . 요점은 가장 강한 군집의 중심과 그것이 발생하는 규모 (아마도 질병 발병 원인과 확산 요인을 식별하는 것)를 식별하는 것이 더 나은 옵션은 여러 척도를 고려하는 것입니다. 3 차원 래스터를 생성하기 위해 스케일 / 면적에 비례하는 적절한 가중치를 적용하는 경우, 3D 공간 스케일 래스터의 로컬 최대 값은 클러스터 중심의 위치와 해당 크기 및 스케일 사이의 지속성을 나타냅니다.


1
당신은 몇 가지 매우 유효한 포인트를 만듭니다. 이 두 가지 문제는 실제로 지리의 고전적인 문제입니다. 첫 번째 문제는 공간의 기본 불균일에 대한 해석과 관련이 있습니다. 즉, 사람들의 분포가 불균일하기 때문에 (일부 지역은 드물게) 범죄의 기회도 불균일합니다. 한 패턴은 다른 패턴에 의해 강제됩니다. 스케일의 두 번째 문제는 측정 가능 영역 (예 : 밀도)에 의존하는 모든 측정에 영향을 미치는 수정 가능한 영역 단위 문제 (MAUP)의 일부입니다. 이것은 대부분의 지리적 작업에서 고전적인 문제입니다.
WhiteboxDev

공간 패턴을 처음으로 본 모양으로 Thiessen 다각형도 고려하십시오. 그것들은 매우 간단하지만 세부 사항을 많이 볼 수 있고 정확한 보간 기이며 다른 더 복잡한 보간 방법을 괴롭히는 일부 스케일 문제를 해결하는 것 같습니다 -gislandscapeecology.blogspot.com/2016/04/…
Tom Dilts
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.