
이번에는 QGIS에서 벡터를 병합하는 방법을 알아보도록 하겠습니다. 이전 편에서 조인(join) 시에 NULL 값이 나와 제대로 조인이 되지 않는 경우에 해결하는 방법을 알아보면서 다양한 방법이 있다고 하며, 벡터 병합 방법을 포스팅하겠다고 했습니다:) 이번에는 벡터 레이어로 구성된 지도에서 각각의 벡터를 하나의 벡터로 병합하는 방법을 설명하겠습니다.
벡터 병합하는 방법
일단 QGIS를 열어줍니다. 저는 3.22.6 버전을 사용하고 있습니다. 버전에 상관없이 있는 기능이기 때문에 저랑 같은 버전을 사용하지 않아도 됩니다. 화면 상에서 보이는 간단한 기능을 활용할 예정입니다.
벡터 병합을 위해 필요한 툴바(Tool bar)

벡터 병합을 하기 위해서는 디지타이징 툴바, 고급 디지타이징 툴바와 선택 툴바가 필요합니다. 화면에 뜨지 않을 경우, 위 툴바 자리의 빈 곳에서 오른쪽 마우스 > 툴바 > 디지타이징 툴바, 고급 디지타이징 툴바와 선택 툴의 네모박스를 체크하여 활성화하면 됩니다.

객체 선택하고 벡터 객체 병합하기
다음은 편집하고자 하는 지도 레이어가 선택된 상태에서, 레이어 편집모드를 킵니다. 단, 이 때의 지도 레이어는 벡터로 제작된 형태여야 합니다. 연필 모양의 아이콘을 누르면 지도 레이어의 편집이 활성화가 됩니다. 다음으로 ‘영역 또는 단일 클릭으로 객체 선택’을 클릭한 후 레이어에서 병합하고자 하는 벡터를 선택해줍니다.
편집모드 상태라면, 속성 테이블에서 드래그하여도 아래와 같이 선택됩니다. 또는 계산하여 ~이상, ~이하 등과 같은 곳을 선택하고 싶을 때는 표현식을 이용하여 객체 선택(ctrl+F3)을 하여 원하는 객체를 선택해줄 수도 있습니다. 저는 간단하고 눈에서 보이기 때문에 표현식을 사용하지는 않았습니다. 양이 너무 많다면 이러한 방법을 사용해보는 것도 추천합니다.

이번에는 경기도 수원시의 4개의 구를 하나의 시로 병합하고자 합니다. 객체 선택했을 경우 위와 같이 노란 배경 + 빨간색 선으로 표시됩니다. 이렇게 선택한 후에 지도 내의 다른 곳을 선택하면 선택이 풀리게 되니 유의해주세요. 선택을 하면 거의 절반은 완료입니다.
선택된 상태로 고급 디지타이징 툴바에서 ‘선택한 벡터 병합’을 클릭해줍니다.

그러면 위와 같은 창이 뜨게 됩니다. 선택한 객체에서 속성 가져오기, 면적이 가장 큰 객체에서 속성 가져오기 등등이 있는데요. 밑에 스크롤을 내려보시면 병합하면 통합된 하나의 객체가 어떠한 필드 값으로 표시되는지 보입니다. 원하는 값이 있다면 선택한 객체에서 속성 가져오기, 면적이 가장 큰 객체에서 속성 가져오기 등 원하시는 값을 고르셔서 하시면 될 것 같아요. 저는 나중에 속성테이블에서 원하는 내용으로 수정할 예정이라 아무 설정도 건드리지 않고 확인을 눌러주었답니다.

벡터 병합을 하고 나면 위와 같이 결과가 나옵니다. 하지만 내부에 선이 깔끔하게 제거가 되지 않았는데요. 그냥 놔두기에는 제대로 된 공간정보 파일이 아니기 때문에 이렇게 병합된 객체를 사용할 수 없으니, 깔끔하게 지우는 방법을 알아볼까요?
꼭짓점 도구를 활용하여 병합한 벡터 깔끔하게 만들기
디지타이징 툴바에서 레이어 편집모드 옆옆에 있는 ‘꼭짓점 도구’를 선택해줍니다.

꼭짓점 도구를 클릭하고 해당 벡터로 가져다 대면, 꼭짓점들이 동그라미의 빨간 원으로 표시됩니다. 클릭을 해도 되고, 그림과 같이 영역을 끌어당겨 삭제하고자 하는 부분을 선택합니다.

선택하면 파란색 원으로 바뀌게 됩니다. 선택이 됐다면 키보드에서 Delete 하시면 해당 점, 선이 삭제가 됩니다. 이러한 방법으로 삭제하고자 하는 부분을 다 선택하여 삭제해주면 됩니다. 조금의 반복 작업이 필요합니다. 깔끔하게 작업하고 나면 다음과 같이 화면이 보입니다.

깔끔하게 삭제된 것을 확인할 수 있습니다. 전국을 대상으로 하고 있어서 이러한 작업을 저는 11번 더 해주었습니다. 시군구 경계를 확대해서 보시면 조금씩 튀어나오는 부분도 발견하여 지워주면 더욱 깔끔해집니다. 화면을 확대하여 작업하시면 선택이 용이하여 더욱 편리하게 작업할 수 있습니다.
병합한 벡터 속성 필드 수정하기
앞에서 병합한 벡터의 속성을 수정하지 않았는데요. 수원시의 경우 4개의 구 중 하나만 속성이 남았는데요. 경기도 수원시 00구가 아닌, 경기도 수원시에 대한 내용으로 수정하려고 합니다.
레이어 > 오른쪽 마우스 > 속성 테이블 열기(편집모드 상태) 해당 필드를 다른 속성들과 통일되는 내용으로 수정해줍니다. 아래는 전주시의 수정 예시입니다

이렇게 하고 나면 데이터 분석을 위한 준비가 다 되었습니다. 저는 이번 벡터 병합의 목적이 조인 시에 시군구 코드가 일치하지 않아 NULL 값이 발생해서 이를 해결하기 위함이었습니다. 조금 귀찮기는 하지만 어렵지 않은 과정이니, 한 번쯤은 해보셔도 좋을 것 같습니다. 이렇게 병합한 파일은 위에서 링크한 포스팅을 참고하시면 파일을 다운로드받을 수 있습니다.
결론
QGIS에는 공간분석을 위한 다양한 분석 방법을 제공하고 있는데요. 그 중에서 shp 파일의 벡터를 내 입맛대로 병합하는 방법을 알아보았습니다. 선택한 벡터 병합 기능을 이용하면 쉽게 벡터를 병합할 수 있으며, 병합 과정이 깔끔하게 되지 않았을 때 남은 선들은 꼭짓점 도구를 활용하여 지워주면 됩니다.
'관련 소프트웨어 사용하기 > GIS' 카테고리의 다른 글
QGIS 카토그램 Cartogram 제작 방법 Cartogram3 플러그인 (0) | 2025.02.19 |
---|---|
공간정보 - 집계구란? 통계지리정보서비스에서 집계구 데이터 다운받는 방법 (0) | 2024.02.01 |
QGIS 시군구 코드 차이 - shp 파일과 데이터 조인 시 NULL 값 오류 해결 방법 (shp 파일 다운로드 O) (0) | 2024.01.20 |
QGIS 설치하는 방법(윈도우 맥 mac), QGIS 버전 차이? (0) | 2024.01.18 |
QGIS 조인 - 속성 파일(.csv) 추가하고 벡터 파일과 조인(join)하는 방법 (0) | 2024.01.17 |