QGIS 용 히트 맵 플러그인을 가지고 놀았는데 다각형뿐만 아니라 점을 사용하는 비슷한 플러그인 / 툴을 사용하여 히트 맵을 만들 수 있는지 궁금합니다.
히트 맵 플러그인이 포인트를 사용하는 것과 거의 같은 방식으로 데이터 밀도를 표현하고 싶습니다.
다음 이미지는 내가 원하는 결과를 대략적으로 보여줍니다.
QGIS 용 히트 맵 플러그인을 가지고 놀았는데 다각형뿐만 아니라 점을 사용하는 비슷한 플러그인 / 툴을 사용하여 히트 맵을 만들 수 있는지 궁금합니다.
히트 맵 플러그인이 포인트를 사용하는 것과 거의 같은 방식으로 데이터 밀도를 표현하고 싶습니다.
다음 이미지는 내가 원하는 결과를 대략적으로 보여줍니다.
답변:
어쩌면 다각형에 임의의 점을 생성 할 수 있습니다 .QGIS 도구가 있습니까? 다각형이 겹치는 경우이 영역에서 다각형의 밀도가 높아집니다. 그런 다음 포인트에 히트 맵을 사용하십시오. 그 결과에 따라 최적의 포인트 수를 찾으려면 여러 라운드를 실행해야합니다.
데이터가 일부 서식지의 분포를 나타내면 어쨌든 희미한 경우 이는 한 지점이 대략 하나의 표본을 반영하는 실제 상황에 가장 가깝습니다.
귀하의 질문을 올바르게 이해하면 이전에 비슷한 일을했습니다. 내가 한 일을 기억해야 했어
폴리가 겹치거나 동일한 레이어가 아닌 경우 작동합니다. 동일한 레이어에 있고 가능한 경우 대상 레이어가 값 중 하나만 상속하지 않으면 별도의 레이어로 이동하십시오.
사용하는 주요 프로세스 는 벡터> 데이터 관리 메뉴 아래 위치 별 결합 속성 입니다. 여기서 육각형 필드를 대상 레이어로 지정하고 결합 레이어를 다각형 중 하나로 지정하십시오. 결과 레이어의 이름을 지정하고 모든 레코드 유지 라디오 버튼을 선택 합니다.
결과 레이어는 다각형 레이어와 교차 한 모든 셀이있는 육각 레이어의 복사본이어야합니다. 이제 상호 작용을 위해 마지막 결과 레이어를 대상 레이어로 사용하고 다음 다각형 레이어를 결합하십시오. 결과 레이어를 가져와 모든 레이어에 참여할 때까지 다음 레이어에 참여하십시오.
최종 레이어는 이전 레이어의 모든 속성 필드를 상속 받았으며 대부분은 NULL이라고 말할 수 있습니다.
여기서 셰이프 파일의 일부를 연주해야하므로 레이어를 셰이프 파일로 저장하지 않았다면 지금 수행하십시오. QGIS의 작업 공간에서 레이어를 제거하십시오.
OpenOffice Calc에서 shapefile의 * .dbf 파일을 엽니 다 . Excel을 사용 하지 마십시오 . 파일을 엉망으로 만들고 쓸모가 없으며 어려운 방법을 배웠습니다. 그리고 데이터를 재정렬하지 마십시오. 파일의 행 순서도 매우 구체적입니다. NULL이 아닌 경우 NULL이 아닌지 확인하고 조심스럽게 교체하십시오.
이제 shapefile을 QGIS에 삽입하고 속성 테이블을 엽니 다 . 이제 NULL 대신 0을 표시해야합니다. 필드 계산기를 사용 하여 작업에 실현 된 필드를 새 열에 합산하십시오.
이제 대상 필드와 겹치는 모든 기능 모음의 값을 정확하게 표시해야하는 합산 된 필드가 있습니다. Symbology 함수를 사용하여 합친 필드의 값을 기반으로 다각형을 채색하여 멋진 choropleth 맵을 만들 수 있습니다.
파일에서 사용되지 않은 모든 필드를 제거하려는 경우. Calc에서 dbf 파일을 다시 열고 원하지 않는 열을 마음대로 삭제하십시오. 개인적으로, 나는 자주 그렇게하는 것처럼 모양 파일로 편안하게 들어가는 법을 배우는 것이 좋습니다.
이것은 래스터를 사용하는 일반적인 워크 플로입니다. QGIS에서 달성 할 구체적인 내용을 모르겠습니다.
알파 / 널 값 및 / 또는 레이어 투명도를 사용하면 모든베이스 맵에서 래스터를 오버레이 할 수 있습니다.
요구 사항에 맞는 경우 데이터 세트에 대한 계산 솔루션은 아니지만 단순히 infographic 솔루션을 찾고 있다면 대신 시도해보십시오.
육각형 셀을 대상으로하고 포인트 데이터를 조인으로하여 위치별로 속성을 조인합니다. 모든 기능을 유지하도록 선택하십시오. 상속 된 값을 원하는 색상으로 셀에 심볼로지를 설정하고 투명도를 50 %로 설정하십시오.
그런 다음 원 폴리곤이있는 레이어에서 심볼을 동일한 색상과 투명도로 설정합니다. 원 폴리를 셀 폴리 앞에 놓습니다. 값이 증가함에 따라 채도가 높아지는 착시 현상이 나타납니다.
원하는 경우 모든 폴리선의 선을 추출하고 맨 위에 오버레이하여 하위 레이어 외곽선이 다른 레이어에 의해 착색되지 않는 것처럼 보일 수 있습니다.
최상의 솔루션을 찾으려면 색상과 투명도를 사용해야합니다. 나는 같은 색이 가장 좋지만 실험적이라는 것을 알았습니다.
GRASS 플러그인을 사용하는 것이 좋습니다. QGIS는 기능이 상당히 제한되어 있습니다 (그리고 GRASS와 같은 소프트웨어가 이미 존재하는 경우 파이썬에서 휠을 재발 명하는 이유는 무엇입니까?).
v.in.ogr.qgis
[다각형에 이미 값이 있는지에 따라 다음 두 줄이 필요할 수 있습니다]
v.db.addcol
v.db.update_const
여기 에서 다각형의 겹침을 합한 다음 해당 열을 기반으로 래스터 를 만듭니다.
v.to.db ... qcolumns=sum(col_with_polygon_value)
v.to.rast.attr
v.out.ogr [r.out.ogr]
일반 QGIS를 사용하면 까다로울 수 있으며, 사용자 지정 스크립팅이 필요하거나 PostGIS 또는 Spatialite와 같은 공간 데이터베이스를 사용해야합니다. PostGIS 로 점 그리드를 생성하거나 CSV 텍스트 파일로 생성하여 가져옵니다. 그런 다음 st_buffer를 사용하여 각 점 주위에 원을 그리거나 ST_MakeEnvelope를 사용하여 사각형을 그리고 각 버퍼의 모든 겹치는 영역을 계산하십시오. 그런 다음 "데이터 없음"을 의미하는 경우 0 값을 모두 제거하려고합니다. 마지막으로 카운터를 무게 필드로 사용하여 그리드에 대한 히트 맵을 수행 할 수 있습니다.
최적의 그리드 해상도를 찾으려면 다른 그리드 해상도를 실험해야합니다. 본질적으로 그것은 벡터 세계에 머무르면서 Kevin이 제안한 래스터 접근법과 매우 유사합니다.