속성테이블의 값을 수정하는 방법은 다음과 같다.
- 셀에 직접 새로운 값을 입력한다.
- 간편필드막대를 이용한다.
- 다중편집모드를 이용한다.
- 필드 계산기를 이용한다.
셀에 직접 입력
편집하고자 하는 셀을 더블 클릭한 후 속성 값을 입력한다.
간편필드막대
레이어가 편집 모드인 경우에만 사용할 수 있다. 드롭다운 목록에서 수정할 필드를 선택하고 표현식 또는 속성값을 입력한다. 사용자의 필요에 따라 선택 항목 또는 전체 항목에 대해 수정할 수 있다.
필드 계산기
필드 계산기는 편집권한이 있는 모든 레이어에 대해 사용할 수 있다. 속성테이블의 필드 계산기 버튼을 클릭하면 아래와 같은 대화상자가 열린다.
표현식 항목에 새로운 값에 대한 표현식을 정의한다. 선택한 객체에 대해서만 수정할 수도 있고, 전체 객체의 값을 모두 수정할 수도 있다. 기존 필드의 값을 변경할 수도 있고 새로운 필드를 생성하여 입력할 수도 있다.
새로운 필드를 생성하려면 필드이름, 필드유형, 필드길이가 필요하다.
예제
- QGIS에서 park.shp을 불러온 후, 속성 테이블 열기 버튼을 클릭한다.
- 편집모드 전환 토글키를 켜고 필드 계산기 버튼을 클릭한다.
- 새로운 필드 생성 체크박스를 선택한다.
- 산출 필드 이름은 "둘레_km", 산출 필드 유형은 "십진수(실수)", 산출 필드 길이는 "12", 정밀도는 "3"을 입력한다.
- 필드와 값 그룹에서 "둘레"를 더블클릭하고 "/1000"을 입력하여 표현식을 완성한다.
- 확인 버튼을 클릭한다.
- 속성테이블에서 "둘레_km"필드가 생성된 것을 확인한다.
표현식에서 사용하는 함수목록(도형)
- $area : 지구의 곡률을 고려한 면적(측지측량)으로 프로젝트 좌표계의 투영체와 면적단위를 사용
- area : 지구의 곡률을 고려하지 않은 면적(평면측량)으로 레이어 좌표계의 면적 단위를 사용
- $geometry : 현재 객체의 도형을 반환, 다른 함수들과 함께 공간 처리하기 위해 사용
- start_point : 도형에서 첫 번째 노드를 반환, 구문 start_point(geometry)
- $x : 현재 포인트 피처의 X 좌표를 반환, 구문 $x
- x : 포인트 도형의 X 좌표를 또는 포인트가 아닌 도형의 경우 중심(centroid)의 X 좌표를 반환, 구문 x(geometry)
- $xat : 현재 객체 도형의 x좌표를 추출, 구문 $xat(i)
연습문제
- park.shp은 우리나라 국립공원에 대한 데이터이다. 각 국립공원의 Url을 조사하여 속성정보로 추가하시오.
- 속성 테이블에 각 객체의 면적을 속성정보로 추가하시오.
(이때 면적의 단위는 제곱킬로미터를 갖도록 할 것, 함수 $area 사용)