Nerdy

[QGIS] 속성 테이블에 있는 데이터를 라벨링 하기 본문

QGIS

[QGIS] 속성 테이블에 있는 데이터를 라벨링 하기

뚱인데요? 2023. 4. 21. 17:21
728x90

QGIS를 사용해서 특정 지역 행정구역 경계를 시각화할 때 테이블 내 데이터를 라벨링해서 표출하는 방법이다.

라벨링 없이 시각화를 하면 어느 지역인지 찾기 어렵기에 라벨링을 통한 시각화를 하면 눈에 잘 보인다는 장점이 있다.


1. 지도 내 표출하고 싶은 속성 값 대상 확인하기

먼저 행정구역 shp 파일을 불러와서 표출을 한 뒤 해당 레이어의 속성 테이블을 들어간다. 본인은 전국구 읍면동 shp파일을 다운받아 진행했다.

좌측에 표출한 레이어를 우측 클릭하여 '속성 테이블 열기'를 누르면 해당 레이어의 테이블을 확인할 수 있다.

여기서 표출하고 싶은 컬럼명을 잘 기억하자

경기도 고양시의 행정동을 라벨링 하고 싶으니 행정동 데이터 값이 포함되어 있는 'temp' 컬럼을 대상으로 할 것이다.

 

2. 고급 필터(표현식)을 사용해서 원하는 데이터 선택 후 저장

전국구 정보가 들어가져 있는 테이블에서 경기도 고양시 객체만 선택을 해서 작업을 해야하기 때문에 고급 필터 기능을 사용해 원하는 데이터만 추출하도록 한다.

먼저 테이블 하단에 '모든 피쳐 표시' 버튼을 누르고 '고급 필터(표현식)'을 누르면 필터 창이 생성된다.

대상 컬럼을 지정하고 데이터 추출을 위한 'ILIKE' 연산자를 사용하여 원하는 데이터명을 입력하면 추출이 가능한다.

경기도 고양시는 자치구가 덕양구, 일산동구, 일산서구로 이루어져있으며 sggnm 컬럼에 포함이 되어 있으니 굳이 행정동을 입력 안하고 자치구를 입력하면 쉽게 추출이 가능하다.

3개의 자치구를 뽑아야하기에 or 연산자를 동시에 사용해서 아래와 같이 입력을 하고 확인을 누르면 추출이 가능하다.

 

"sggnm" ILIKE ' 고양시덕양구' or "sggnm" ILIKE '고양시일산동구' or "sggnm" ILIKE '고양시일산서구'

 

추출을 잘 되었으면 대상 객체를 전체 선택한 뒤 레이어 파일을 우클릭 후 'Export' → '선택한 객체를 다른 이름으로 저장' → 원하는 파일명과 파일형식을 저장하면 된다.

본인은 자치구를 구별하기 위해 덕양구, 일산동구, 일산서구를 구별해서 총 3개의 geojson 형식으로 저장했다.

 

3. 선택한 객체 라벨링 진행하기

선택한 객체를 저장하면 자동으로 레이어가 생성이 되지만 라벨링이 없는 색상 객체만 표출이 되며 여기서부터 라벨링 작업을 진행하면 된다.

객체를 지정해서 추가한 레이어를 더블클릭 후 '라벨' 메뉴를 클릭해준다.

그리고 '라벨 없음' 부분을 클릭해 '단일 라벨'로 변경, 라벨을 표출하고 싶은 컬럼을 선택, '텍스트' 메뉴를 클릭해주면 표출할 라벨의 글꼴과 스타일, 크기 등을 지정해줄 수 있다.

 

자신의 취향에 맞게 지정을 해주고 적용을 해주면 아래와 같이 라벨링이 잘된 결과물을 볼 수 있을 것이다.

 

위 이미지는 테스트용으로 진행했던거고 아래의 이미지는 개인적으로 진행한 자치구별 추출 후 라벨링, 색상과 경계선을 지정한 결과값이다.

728x90