3.1. Lesson: 벡터 데이터 작업

이견이 있을 수도 있지만 보통 GIS를 사용할 때 가장 흔히 볼 수 있는 데이터가 벡터 데이터입니다. 벡터 데이터는 포인트로 지리 데이터를 묘사하며, 이러한 포인트는 연결되어 라인이나 폴리곤이 될 수 있습니다. 벡터 데이터셋에 포함된 모든 오브젝트를 피처 라고 하며, 이 피처를 묘사하는 데이터와 연결되어 있습니다.

이 강의의 목표: 벡터 데이터의 구조와 맵에 벡터 데이터셋을 로드하는 방법을 배우기.

3.1.1. basic Follow Along: 레이어 속성 뷰

여러분이 작업할 데이터가 오브젝트가 어디에 위치하는지 나타낼 뿐만 아니라 어떤 오브젝트인지도 나타낸다는 사실을 알아야 합니다.

이전 예제를 실행했다면 사용자 맵에 roads 레이어가 로드돼 있을 것입니다. 현재 사용자는 단순히 도로의 위치밖에 알 수 없습니다.

사용할 수 있는 모든 데이터를 보려면 레이어 목록에서 roads 레이어를 선택한 다음,

  • attributes 버튼을 클릭하십시오.

roads 레이어에 대한 더 많은 데이터가 담긴 테이블이 나타납니다. 이 추가 데이터를 속성 데이터(attribute data) 라고 합니다. 사용자 맵에 보이는 라인은 도로가 어디로 뻗어 있는지 나타냅니다. 이것을 공간 데이터(spatial data) 라고 합니다.

GIS에서 이 정의는 흔히 사용되므로, 잘 기억해두는 편이 좋습니다!

  • 이제 속성 테이블을 닫으십시오.

벡터 데이터는 좌표 평면 상에서 포인트, 라인, 폴리곤으로 피처를 나타냅니다. 보통 도로나 도시 블럭 같은 개별 피처를 저장하는 데 쓰입니다.

3.1.2. basic Follow Along: Shapefile에서 벡터 데이터 로드

Shapefile은 GIS 데이터를 관련 파일 그룹으로 저장할 수 있는 특정한 파일 형식입니다. 각 레이어는 확장자는 다르지만 파일명이 동일한 몇 개 파일들로 이루어집니다. 손쉽게 shapefile을 주고받을 수 있어 대부분의 GIS 소프트웨어가 지원합니다.

이전 강의에서 기초 예제로 설명했던 벡터 레이어를 추가하는 방법을 떠올려 보십시오.

동일한 방법으로 사용자 맵에 데이터셋을 로드합니다.

  • “places”
  • “water”
  • “rivers”
  • “buildings”

결과 확인

3.1.3. basic Follow Along: 데이터베이스에서 벡터 데이터 로드

데이터베이스는 대용량의 관련 데이터를 하나의 파일로 저장할 수 있습니다. 여러분은 벌써 Microsoft Access 같은 DBMS(database management system)를 잘 알고 있을지도 모르겠군요. GIS 응용 프로그램도 데이터베이스를 활용할 수 있습니다. 공간 데이터를 다뤄야 하기 때문에 GIS에 특화된 (PostGIS 같은) DBMS들은 추가 기능들을 갖추고 있습니다.

  • mActionAddSpatiaLiteLayer 아이콘을 클릭하십시오.

(이 아이콘이 보이지 않는다면, Manage Layers 툴바가 활성화돼 있는지 확인하십시오.)

새 대화 창이 나타날 것입니다. 이 대화 창에서,

  • New 버튼을 클릭합니다.

  • 다른 데이터가 담긴 동일 폴더에서 landuse.sqlite 파일을 찾을 수 있을 것입니다. 해당 파일을 선택한 다음 Open 을 클릭합니다.

이제 처음 대화 창이 다시 보일 것입니다. 세 버튼 위에 있는 드롭다운 선택 메뉴가 사용자 컴퓨터에 있는 데이터베이스 파일의 경로 “land_use.db@...”으로 변한 것이 보이십니까?

  • Connect 버튼을 클릭합니다. 이전까지 비어 있단 창에 다음과 같은 내용이 나타날 것입니다.

../../../_images/spatiallite_dialog_connected.png
  • landuse 레이어를 클릭해서 선택한 다음, Add 를 클릭합니다.

주석

맵을 자주 저장해야 합니다! 맵 파일은 어떤 데이터도 직접 담고 있지 않지만, 어떤 레이어를 로드했는지 저장합니다.

결과 확인

3.1.4. Follow Along: 레이어 재배열

사용자 레이어 목록에 있는 레이어들은 맵 상에 특정 순서대로 그려집니다. 목록 맨 아래에 있는 레이어를 첫 번째로 그리고, 맨 위에 있는 레이어를 마지막에 그립니다. 목록에서 레이어 순서를 바꾸면 맵 상에 그려지는 순서도 바꿀 수 있습니다.

주석

사용자의 QGIS 버전에 따라 레이어 목록 아래쪽에 Control rendering order 라는 체크박스가 있을 수도 있습니다. 이것을 체크(활성화)해야만 레이어 목록에서 레이어를 위아래로 이동할 때 맵 상에서도 앞뒤로 움직입니다. 사용자의 QGIS 버전에 이 옵션이 없을 경우, 기본적으로 활성화된 상태이므로 걱정할 필요는 없습니다.

현재 맵 상에 레이어가 로드되는 순서가 전혀 논리적이지 않을 수도 있습니다. 다른 레이어들이 road 레이어를 덮어 완전히 가려져 있을 수도 있습니다.

예를 들어 레이어 순서를 이렇게 하면...

../../../_images/incorrect_layer_order.png

... “roads” 및 “places” 레이어가 “urban areas” 레이어 아래로 가기 때문에 보이지 않게 됩니다.

이 문제를 해결하려면,

  • 레이어 목록에서 레이어를 클릭 & 드래그하십시오.

  • 다음처럼 순서를 재배열하십시오.

../../../_images/correct_layer_order.png

이제 도로와 건물이 토지이용구역 위에 나타나는, 시각적으로 더 논리적인 맵을 볼 수 있습니다.

3.1.5. In Conclusion

이제 몇 가지 다른 소스들로부터 필요한 모든 레이어를 추가했습니다.

3.1.6. What’s Next?

레이어를 로드할 때 랜덤한 색상이 자동적으로 적용되므로, 현재 사용자 맵을 읽기 힘들 수도 있습니다. 사용자가 직접 색상 및 심볼을 적용하는 편이 좋습니다. 다음 강의에서 그 방법을 배울 것입니다.