전체 글 25

데이터 소스 활용도 지수 조회 및 시각화

내가 만든 데이터를 사용자들이 얼마나 사용하고 있을까? 데이터 접근 지수를 객관적으로 판단하고 시각화하는 방법에는 여러가지가 있지만, 테이블을 생성하고 쿼리문을 통해 조회하는 방법으로 수행했다. 방법은 아래와 같다. 0. 데이터 사용시마다 접속로그를 DB의 테이블의 행으로 추가 세션값, 아이피, 접속일시 등 목적에 맞게 컬럼을 생성해준다. ※ 참고로 세션아이디, 접속일시, 아이피 등을 입력하는 코드는 아래와 같이 작성했다. // 세션 아이디 HttpSession session = request.getSession(); String session_id = session.getId(); // 접속 일시 java.util.Date currentDate = new java.util.Date(); java.sql..

GIS Data Analysis 2024.03.27

addgeometrycolumn 오류 해결 (+ QGIS 필드 재작성)

QGIS를 이용해서 shp파일을 DBMS에 올리려 했는데 아래와 같은 오류 발생... 오류 2 데이터 원본 "test"."test1" 생성 실패: ERROR: function addgeometrycolumn(unknown, unknown, unknown, integer, unknown, integer) does not exist LINE 1: SELECT AddGeometryColumn('test','test1',NULL,4326,'MULTIPOLY... ^ HINT: No function matches the given name and argument types. You might need to add explicit type casts. 해외 지도 데이터를 처리하는 중이라, 처음에는 컬럼명에 영어가 ..

[ODBC 드라이버 관리자] 데이터 원본 이름이 없고 기본 드라이버를 지정하지 않았습니다. (da#5 modeler로 논리/물리 ERD 작성하기)

da#5 modeler를 활용하여 논리/물리 ERD를 작성하려고 했으나, 아래와 같은 오류가 발생하였다... ⚠️ [ODBC 드라이버 관리자] 데이터 원본 이름이 없고 기본 드라이버를 지정하지 않았습니다 ※ 여기서 ODBC란? Open Database Connectivity의 약자로, 데이터베이스 액세스를 위한 표준 소프트웨어 API이다. 이 API를 사용하면 여러 가지 데이터베이스에 접근하여 데이터를 읽고 쓸 수 있다. 즉 ODBC 드라이버가 없다는 이야기이다. 따라서 이 오류를 해결하기 위해서는 본인이 사용하는 DBMS에 맞게 odbc 드라이버를 추가해줘야한다! 내가 해결한 방법은 아래와 같다. 1. 본인 DBMS의 odbc를 다운로드 (자신의 맞는 버전의 32bit로) 나는 PostgreSQL 16..

JIRA 사용 후기

현재 내가 속한 팀에서는 JIRA를 사용하지는 않지만, 주변에서 워낙 많이들 사용한다고 해서, 한번 사용해봤다. 원래는 팀프로젝트 관리도구이지만, 상황상 혼자서라도 사용해봤는데... 정리하는걸 좋아하는 나에게는 너무 좋은 것 같다! 좋다고 생각한 기능은 아래와 같다. 1. 타임라인 - 한눈에 내가 뭘했고 무엇을 해야할지를 정리해서 볼 수 있어서 좋았다 (=> 팀 전체의 진행상황을 파악하는데 도움) - 계획대로 하고 있는지 체크해볼 수 있었다. - 구체적인 시작/마감 일정을 확인할 수 있었다. (=> 추가로 나는 실제 시작/마감일을 입력하게 설정했다) 2. 워크플로 - 워크플로를 설정하면, 해당 작업에 대해 세부적으로 진행상황을 표현할 수 있다. - 나의 경우에는 '해야할일 / 대기 / 진행중 / 검토중 ..

GIS Project 2024.02.26

Git으로 협업하기!

협업툴로 협업을 해야하는 경우가 많았는데, 이때 정리해둔 내용 공유합니다! 1. 안드로이드 스튜디오와 GitHub 연동 연동하는 방법은 아래 블로그를 참고하였다. https://velog.io/@kiyoog02/Android-Studio%EC%99%80-GitHub-%EC%97%B0%EB%8F%99 Android Studio와 GitHub 연동 안드로이드 스튜디오와 GitHub을 연동하는 방법 + 오류 해결 velog.io 2. Git 최초 commit & push 시 오류 오류내용 error: failed to push some refs to~ Updates were rejected because the tip of your current branch is behind ~ 의미 원격저장소와 현재 작업중..

GIS Development 2024.02.17

해상도? (+ 축척과 줌레벨과의 상관관계)

데이터를 받아보면, 다양한 메타데이터들을 확인해볼 수 있다. 예를들면 좌표계나, 포맷 등... 그중에서 해상도는 50cm, 5m 등과 같이 적혀있는데, 과연 무엇을 의미하는걸까? 정사영상의 해상도가 50cm라는 것은 이미지에서 인식 가능한 가장 작은 공간 단위가 50cm x 50cm이라는 의미한다. (픽셀당 실제 세계에서의 크기를 나타냄) 예를 들어, 100km x 100km의 토지가 있다고 가정해보자. 이미지의 해상도가 50cm이면, 이미지에서 각 픽셀이 실제 세계에서 50cm x 50cm의 지역을 나타냄. 이를 이용하여 토지의 크기를 이미지의 픽셀 수로 표현할 수 있다. 가로 방향: 100 km=100,000 m=1,000,000 cm 이미지에서의 가로 방향 픽셀 수: 1,000,000cm/50cm ..

축척과 줌레벨의 상관관계

축척 축척은 일반적으로 크기와 반대의 개념으로 사용 축척이 작을 때 (Small Scale): 이미지에서 나타내는 지역이 상대적으로 크다는 것 이미지에서 픽셀이 나타내는 지역이 크고, 전체 지역을 포함하는데 용이 큰 지역이 한 장의 이미지에 표현되므로 지면의 세부 사항이 작게 나타남 예를 들어, 1:1,000,000의 축척은 1cm의 지형이 1,000,000cm (10km)의 실제 지형을 나타냄 축척이 클 때 (Large Scale): 이미지에서 나타내는 지역이 상대적으로 작다는 것 이미지에서 픽셀이 나타내는 지역이 작고, 지역의 세부 사항을 더 정확하게 파악 작은 지역이 한 장의 이미지에 더 자세히 표현되므로 지면의 세부 사항이 크게 나타남 예를 들어, 1:10의 축척은 1cm의 지형이 10cm의 실제..

3D 지도 뷰에서 지리적 좌표계? 투영 좌표계?

QGIS에서 3D 지도 뷰를 보려고 하니, 이와 같은 메시지가 나타났다. 현재 3D 뷰는 투영되지 않은 좌표계(CRS)를 지원하지 않습니다. 프로젝트의 좌표계를 투영 좌표계로 변경하십시오. 투영 좌표계로 변경하라니, 무슨 말일까? 애초에, 지구라는 타원체는 지표면이 매우 불규칙하여 완벽하게 구현하기 어렵다. 따라서, 각 나라마다 각자 적합한 타원체(WGS84, GRS80, Bessel 등)를 정의하여 사용한다. 투영시에도 각자 왜곡이 각자 덜하도록 용도, 지역등에 맞게 투영법(UTM, TM 등)을 선택한다. (※ + ITRF와 같은 지구중심좌표계에 따라서도) 때문에 좌표계는 다양하게 존재할 수 밖에 없다. 이중에서 지리적 좌표계는 투영되지 않은, 투영 좌표계는 투영된 좌표계라고 이해하면 된다. 그리고 각..

POINT ZM? 고도값이 포함된 공간데이터

Geom 타입의 데이터들 중에서 POINT ZM 형식으로 되어있는 데이터를 볼 수 있다. POINT 뒤에 ZM은 뭘까? 정답부터 말하자면 Z는 고도, M은 측정값을 의미한다. M (측정값)에는 여러가지 값들이 들어갈 수 있는데, 표고값도 그에 해당한다. 그렇다면 고도와 표고의 차이는 무엇일까? 고도(altitude)는 평균해수면에서 어떤 지점까지의 수직 거리, 표고(Elevation)는 평균해수면에서 지표면까지의 수직 거리를 나타낸다. (※ 높이(height)는 지표면에서 어떤 지점까지의 수직 거리를 나타낸다) 즉, 어디까지의 거리냐에 따른 차이인 셈이다. 표고는 지표면까지의 수직거리이고, 지표면은 평균해수면보다 높을수도 낮을수도 있기 때문에 음수의 값이 나올수도 있는 것 이다. 이와 비슷한 개념으로 해..

래스터 공간데이터를 DBMS에 등록하는 방법

우선 ige(ige:img파일의 용량이 크면 ige로 확장자명이 변경) 파일을 TIFF 파일로 변환하였다 (QGIS 활용) ※ TIFF (Tagged Image File Format) : TIFF 파일은 이미지 데이터 외에도 여러 가지 종류의 메타데이터(부가 정보)를 포함할 수 있는데, 이러한 메타데이터는 태그(tag)로 구성 이후 cmd창에 아래와 같이 입력하여 PostgreSQL에 해당 래스터 데이터를 등록하려고 했으나, cd C:\Program Files\PostgreSQL\16rc1 raster2pgsql -c -I -F -s 4326 -t 128x128 피일경로\파일명.tif 스키마.테이블 | psql -U postgres -d DB명 -h 호스트 -p 포트번호 ※ c : create, I : ..