Compas에서는 공간 분석/연산을 위해 Geoband API를 제공합니다.
Compas에서 제공하는 Jupyter Notebook 환경에는 Geoband API(이하 API) 패키지가 설치되어 있으므로 별도로 설치할 필요는 없습니다.
이 문서는 R Kernel 기준으로 작성되었습니다.
※ 현재 R Kernel에서 Geoband API는 사용 준비중 입니다.
API를 사용하기 위해 다음과 같이 import 합니다.
library('geoband')
공간연산한 결과 데이터를 표현하기위해 다음 패키지들도 import 합니다.
library('leaflet')
library('sp')
library(rgdal)
type name | Description |
---|---|
feature_name | feture 명. 공간연산에 필요한 feature 목록을 compas에서 제공합니다. feature_name에는 반드시 compas에서 제공된 목록에 있는 feature 명만 사용 가능합니다. |
feature_list | feture 이름 List. 공간연산시 여러 개의 feature가 필요한 경우 콤마(,)를 구분자로 해서 feature_list를 API에 제공해야 합니다. |
cql | Casandra Query Languate 참조 |
GeoJSON | 위치정보를 갖는 점을 기반으로 체계적으로 지형을 표현하기 위해 설계된 개방형 공개 표준 형식. GeoJSON 참조 |
boolean | True / False |
parameter name | Optional | Description |
---|---|---|
saveFileName | Y | 결과 데이터를 저장할 파일명. 저장할 디렉토리를 지정 가능합니다. 생략시에는 파일을 저장하지 않습니다. |
type name | 설명 |
---|---|
GeoJSON | 위치정보를 갖는 점을 기반으로 체계적으로 지형을 표현하기 위해 설계된 개방형 공개 표준 형식. GeoJSON 참조 |
Geoband 에서 제공하는 Feature 데이타 입니다. 공간분석시 사용가능합니다.
API 호출시 Feature Name을 사용하시기 바랍니다.
Type | Title | Feature Name | SRS |
---|---|---|---|
Polygon | 시도 | geoband:tl_scco_ctprvn | EPSG:4326 |
Polygon | 시군구 | geoband:tl_scco_sig | EPSG:4326 |
Polygon | 리 | geoband:tl_scco_li | EPSG:4326 |
Polygon | 읍면동 | geoband:tl_scco_emd | EPSG:4326 |
Point | 녹시율(부산) | geoband:gvi_busan | EPSG:4326 |
Point | 녹시율(대구) | geoband:gvi_daegu | EPSG:4326 |
Point | 녹시율(광주) | geoband:gvi_gwangju | EPSG:4326 |
Point | 녹시율(화성) | geoband:gvi_hwaseong | EPSG:4326 |
Point | 녹시율(인천) | geoband:gvi_incheon | EPSG:4326 |
Point | 녹시율(세종) | geoband:gvi_sejong | EPSG:4326 |
Point | 녹시율(서울) | geoband:gvi_seoul | EPSG:4326 |
Point | 녹시율(울산) | geoband:gvi_ulsan | EPSG:4326 |
Point | 서울시 아파트 | geoband:apartment | EPSG:4326 |
Point | 전국 은행 | geoband:bank | EPSG:4326 |
Point | 전국 버거킹 | geoband:bugerking | EPSG:4326 |
Point | 전국 던킨도너츠 | geoband:dunkindonuts | EPSG:4326 |
Point | 전국 지진 | geoband:earthquake | EPSG:3857 |
Polygon | 서울시 동 | geoband:emd | EPSG:3857 |
Point | 전국 대기업 | geoband:enterprise | EPSG:3857 |
Point | 전국 소방서 | geoband:firestation | EPSG:3857 |
Point | 서울시 가스충전소 | geoband:gasstation | EPSG:3857 |
Point | 전국 골프장 | geoband:golf | EPSG:3857 |
Point | 서울시 병원 | geoband:hospital | EPSG:3857 |
Point | 전국 KFC | geoband:kfc | EPSG:3857 |
Polygon | 전국 읍면동 | geoband:korea_emd | EPSG:3857 |
Point | 전국 학교 | geoband:korea_school | EPSG:3857 |
Polygon | 전국 시군구 | geoband:korea_sgg | EPSG:3857 |
Line | 서울시 샘플 라인 | geoband:line | EPSG:3857 |
Point | 전국 롯데리아 | geoband:lotteria | EPSG:3857 |
Point | 서울시 재래시장 | geoband:market | EPSG:3857 |
Point | 전국 맥도널드 | geoband:mcdonalds | EPSG:3857 |
Point | 전국 아웃브레이크 | geoband:outbreak | EPSG:3857 |
Line | 서울시 OD 데이터 | geoband:od_flow | EPSG:3857 |
Polygon | 서울시 오버레이1 | geoband:overlay01 | EPSG:3857 |
Polygon | 서울시 오버레이2 | geoband:overlay02 | EPSG:3857 |
Point | 서울시 주점 | geoband:pubs | EPSG:3857 |
Line | 서울시 도로망 | geoband:road | EPSG:3857 |
Polygon | 서울 구별 인구 변화 | geoband:seoul_series | EPSG:3857 |
Point | 서울시 학교 | geoband:school | EPSG:3857 |
Polygon | 서울시 구 | geoband:sgg | EPSG:3857 |
Polygon | 서울시 경계 | geoband:sid | EPSG:3857 |
Point | 전국 철도역 | geoband:stations | EPSG:3857 |
Point | 서울시 마트 | geoband:stores | EPSG:3857 |
Point | 서울시 극장 | geoband:theaters | EPSG:3857 |
Line | 전국 지하철노선 | geoband:subway | EPSG:3857 |
Point | 서울시 위험 화학물 취급업소 | geoband:toxic_office | EPSG:3857 |
Point | 서울시 추적점 | geoband:track_points | EPSG:3857 |
Point | 서울시 구청 | geoband:wardoffice | EPSG:3857 |
벡터 분석 및 처리와 관련된 프로세스 그룹입니다.
포인트 피처, 범위, 반경을 이용하여 Circle 그리드를 생성 후 각 셀에 포인트의 수를 계산한 폴리곤 피처를 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
features | feature_name | O | Input point features to be aggregated. |
weight | string | The numeric field or expression used to weight values. Ex) [field] or [field] * 0.5 etc... weight 식이 주어진 경우 weight의 값을 누적한다. |
|
csr | string | 범위(extent) 지정에 사용할 좌표기준계 범위가 없는 경우 features 데이터의 Extent를 사용한다. |
|
minX | string | 범위(extent) 지정에 사용할 최소 X 좌표 | |
minY | string | 범위(extent) 지정에 사용할 최소 Y 좌표 | |
maxX | string | 범위(extent) 지정에 사용할 최대 X 좌표 | |
maxY | string | 범위(extent) 지정에 사용할 최대 Y 좌표 | |
radius | double | O | Radiuss of the grids. radius는 0보다 커야 한다. |
validGrid | boolean | Returns only valid grid. Default is True. validGrid 파라미터의 기본값은 True이며, 포인트의 개수가 0 이상인 그리드만 반환한다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = CircularBinning(features="geoband:gvi_busan", weight="greenview",
csr="EPSG:4326", minX="128.7617", minY="34.9891", maxX="129.3056", maxY="35.389",
radius="0.05", validGrid="False", saveFileName="json_R/result_CircularBinning.json")
jsonData <- readLines('json_R/result_CircularBinning.json')
map = leaflet() %>% setView(lng = 129.0001, lat = 35.1598, zoom = 10) %>%
addTiles() %>%
addGeoJSON(jsonData, weight = 3, color = "#4444ff", fill = FALSE)
map
포인트의 위치가 동일하거나 특정 반경 내의 포인트 피처를 하나의 피처로 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The features representing event or incident data. |
countField | string | The field to be calculated coincident points count. icount (Default). countField 파라미터를 설정하지 않으면 icount 필드를 기본값으로 사용한다. |
|
tolerance | string | The tolerance distance for considering two points equal. Format is double tolerance값이 0이면 정확히 일치하는 포인트를, 0보다 크면 tolerance 거리 이내의 피처를 동일한 것으로 간주한다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = CollectEvents(inputFeatures="geoband:market", countField="mycnt", tolerance="5000",
saveFileName="json_R/result_CollectEvents.json")
from_crs = CRS("+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs")
to_crs = CRS("+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs")
jsonData <- readLines('json_R/result_CollectEvents.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 10) %>%
addTiles() %>%
addMarkers(data = df2)
map
포인트 피처, 범위, 반경을 이용하여 Hexagon 그리드를 생성 후 각 셀에 포인트의 수를 계산한 폴리곤 피처를 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
features | feature_name | O | Input point features to be aggregated. |
weight | string | The numeric field or expression used to weight values. Ex) [field] or [field] * 0.5 etc... weight 식이 주어진 경우 weight의 값을 누적한다. |
|
csr | string | 범위(extent) 지정에 사용할 좌표기준계 범위가 없는 경우 features 데이터의 Extent를 사용한다. |
|
minX | string | 범위(extent) 지정에 사용할 최소 X 좌표 | |
minY | string | 범위(extent) 지정에 사용할 최소 Y 좌표 | |
maxX | string | 범위(extent) 지정에 사용할 최대 X 좌표 | |
maxY | string | 범위(extent) 지정에 사용할 최대 Y 좌표 | |
size | double | O | Size of the grids. size는 0보다 커야 한다. |
validGrid | boolean | Returns only valid grid. Default is True. validGrid 파라미터의 기본값은 True이며, 포인트의 개수가 0 이상인 그리드만 반환한다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = HexagonalBinning(features="geoband:gvi_busan", weight="greenview",
csr="EPSG:4326", minX="128.7617", minY="34.9891", maxX="129.3056", maxY="35.389",
size="0.05", validGrid="False", saveFileName="json_R/result_HexagonalBinning.json")
jsonData <- readLines('json_R/result_HexagonalBinning.json')
map = leaflet() %>% setView(lng = 129.0001, lat = 35.1998, zoom = 9) %>%
addTiles() %>%
addGeoJSON(jsonData, weight = 3, color = "#4444ff", fill = FALSE)
map
폴리곤 피처 레이어와 중첩하는 포인트 레이어의 개수 또는 기초 통계값을 계산합니다.
Name | Type | Required | Description |
---|---|---|---|
polygonFeatures | feature_name | O | The polygon features to be calculated. |
pointFeatures | feature_name | O | The point features to be calculated. |
countField | string | The count field. count is a default | |
statisticsFields | string | 아래 테이블 statisticsFields 참조 |
|
saveFileName | string | 결과를 저장할 파일명 |
statisticsFields
[함수명.필드명] 구조로 입력하며 사용가능한 함수는 다음과 같다. 예) Sum.pop, Mean.pop
입력값 | 반환필드명 |
---|---|
First: String 필드, Dissolve 대상 Feature의 첫 번째 값 | FST_필드명 |
Last: String 필드, Dissolve 대상 Feature의 마지막 값 | LST_필드명 |
Sum: Numeric 필드, Dissolve 대상 Feature의 합 | SUM_필드명 |
Mean: Numeric 필드, Dissolve 대상 Feature의 평균값 | AVG_필드명 |
Min: Numeric 필드, Dissolve 대상 Feature의 최소값 | MIN_필드명 |
Max: Numeric 필드, Dissolve 대상 Feature의 최대값 | MAX_필드명 |
Std: Numeric 필드, Dissolve 대상 Feature의 표준편차 | STD_필드명 |
Var: Numeric 필드, Dissolve 대상 Feature의 분산 | VAR_필드명 |
Range: Numeric 필드, Dissolve 대상 Feature의 범위 | RNG_필드명 |
Count: Dissolve 대상 Feature의 수 | CNT_필드명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = PointStatistics(polygonFeatures="geoband:sgg", pointFeatures="geoband:stores", countField="cnt", statisticsFields="Count.sgg_cd",
saveFileName="json_R/result_PointStatistics.json")
jsonData <- readLines('json_R/result_PointStatistics.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 10) %>%
addTiles() %>%
addPolygons(data = df2)
map
포인트 피처, 범위, 반경을 이용하여 Rectangle 그리드를 생성 후 각 셀에 포인트의 수를 계산한 폴리곤 피처를 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
features | feature_name | O | Input point features to be aggregated. |
weight | string | The numeric field or expression used to weight values. Ex) [field] or [field] * 0.5 etc... weight 식이 주어진 경우 weight의 값을 누적한다. |
|
csr | string | 범위(extent) 지정에 사용할 좌표기준계 범위가 없는 경우 features 데이터의 Extent를 사용한다. |
|
minX | string | 범위(extent) 지정에 사용할 최소 X 좌표 | |
minY | string | 범위(extent) 지정에 사용할 최소 Y 좌표 | |
maxX | string | 범위(extent) 지정에 사용할 최대 X 좌표 | |
maxY | string | 범위(extent) 지정에 사용할 최대 Y 좌표 | |
width | double | O | Width of the grids. width, height는 0보다 커야 한다. |
height | double | O | Height of the grids. width, height는 0보다 커야 한다. |
validGrid | boolean | Returns only valid grid. Default is True. validGrid 파라미터의 기본값은 True이며, 포인트의 개수가 0 이상인 그리드만 반환한다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = RectangularBinning(features="geoband:gvi_busan", weight="greenview",
csr="EPSG:4326", minX="128.7617", minY="34.9891", maxX="129.3056", maxY="35.389",
width="0.1", height="0.1", validGrid="False", saveFileName="json_R/result_RectangularBinning.json")
jsonData <- readLines('json_R/result_RectangularBinning.json')
map = leaflet() %>% setView(lng = 129.0001, lat = 35.1998, zoom = 9) %>%
addTiles() %>%
addGeoJSON(jsonData, weight = 3, color = "#4444ff", fill = FALSE)
map
포인트 피처와 반경 표현식을 이용하여 Spatial Clump Map을 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | Input features to be buffered. |
radius | string | The radius expression used to create distance. Ex) 1000 or [field] or [field] * 0.5 etc... | |
radiusUnit | string | 다음 값중 하나가 될수 있다. [Default, Meters, Kilometers, Inches, Feet, Yards, Miles, NauticalMiles] |
|
quadrantSegments | string | The number of line segments used to represent a quadrant of a circle. Default is 8. | |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = SpatialClumpMap(inputFeatures="geoband:gvi_busan", radius="0.005", radiusUnit="Meters", quadrantSegments="4",
saveFileName="json_R/result_SpatialClumpMap.json")
jsonData <- readLines('json_R/result_SpatialClumpMap.json')
map = leaflet() %>% setView(lng = 129.0001, lat = 35.1998, zoom = 10) %>%
addTiles() %>%
addGeoJSON(jsonData, weight = 3, color = "#4444ff", fill = FALSE)
map
공간 관계에 기반하여 두 피처의 공간 조인을 수행합니다. 두 피처 레이어의 모든 속성값을 포함합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | Input features. |
joinFeatures | feature_name | O | Join features. |
joinType | string | Join Type. 다음 값중 하나가 될수 있다. [KeepAllRecord, OnlyMatchingRecord] KeepAllRecord인 경우 공간 조인이 수행되지 않은 inputFeatures의 모든 피처를 포함하여 반환한다. |
|
searchRadius | string | Search Radius. searchRadius 파라미터 값이 주어지면 searchRadius 내에 포함되는 피처와 조인한다. |
|
radiusUnit | string | Search Radius Unit. 다음 값중 하나가 될수 있다. [Default, Meters, Kilometers, Inches, Feet, Yards, Miles, NauticalMiles] |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = SpatialJoin(inputFeatures="geoband:sgg", joinFeatures="geoband:enterprise", joinType="KeepAllRecord", searchRadius="1",
radiusUnit="Kilometers",
saveFileName="json_R/result_SpatialJoin.json")
jsonData <- readLines('json_R/result_SpatialJoin.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 10) %>%
addTiles() %>%
addPolygons(data = df2)
map
폴리곤 피처 레이어의 면적 과 둘레를 계산합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The input polygon features to be calculated. 반드시 폴리곤이어야 한다. |
areaField | string | The area field that will be calculated. geom_area is a default. |
|
areaUnit | string | areaField Unit. 다음 값중 하나가 될수 있다. [Default, SquareMeters, SquareKilometers, SquareFeet, SquareYards, SquareMiles, Hectare, Acre] |
|
perimeterField | string | The perimeter field that will be calculated. | |
perimeterUnit | string | perimeterField Unit 다음 값중 하나가 될수 있다. [Default, Meters, Kilometers, Inches, Feet, Yards, Miles, NauticalMiles] |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = CalculateArea(inputFeatures="geoband:overlay01", areaField="myarea", areaUnit="SquareKilometers", perimeterField="mylength",
perimeterUnit="Kilometers",
saveFileName="json_R/result_CalculateArea.json")
jsonData <- readLines('json_R/result_CalculateArea.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0065831, lat = 37.5538699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
사용자가 설정한 Expression 수식을 이용하여 새로운 필드값을 계산하거나 Geometry Type을 변경합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The Input features to be calculated. |
expression | string | The simple calculation expression used to create a value that will populate the selected rows. ex) [population] / ([geom_area] / 1000000) Expression 에 의해 반환되는 값이 Geometry인 경우 fieldName은 무시되고 반환되는 데이터의 Geometry값이 적용된다. Advanced Expression 참조 |
|
fieldName | string | The field that will be updated with the new calculation. Evaluated is a default. | |
saveFileName | string | 결과를 저장할 파일명 |
Advanced Expression
Expression 파라미터의 다양한 활용 예제이며, [geom] 은 PostGIS, Shapefile 등의 Geometry 필드 이름입니다.
구분 | Expression | 반환값 |
---|---|---|
일반 수식 | round([pop2008] / (area( [geom] ) / 1000000)) | Numeric |
면적 | area( [geom] ) | Numeric |
둘레/길이 | geomLength( [geom] ) | Numeric |
중심점의 X 좌표 | getX( centroid( [geom])) | Numeric |
폴리곤을 라인으로 | boundary( [geom] ) | Geometry |
버퍼 | bufferWithSegments( [geom], 250, 16) | Polygon |
무게중심점 | centroid( [geom]) | Point |
폴리곤에 포함되는 내부 점 | interiorPoint( [geom] ) | Point |
폴리곤 또는 라인의 시작점 | startPoint( [geom] ) | Point |
폴리곤 또는 라인의 끝점 | endPoint( [geom]) | Point |
폴리곤, 라인, 멀티포인트의Convex Hull | convexHull( [geom] ) | Polygon |
폴리곤, 라인, 멀티포인트를 둘러싸는 최소 원 | mincircle( [geom] ) | Polygon |
폴리곤, 라인, 멀티포인트를 포함하는 영역의 최소 반경 라인 | minimumdiameter( [geom] ) | Line |
폴리곤, 라인, 멀티포인트를 포함하는 영역의 최소 반경 영역 | minrectangle( [geom] ) | Polygon |
폴리곤, 라인, 멀티포인트를 포함하는 최소 8각형 영역 | octagonalenvelope( [geom] ) | Polygon |
x offset, y offset 만큼 이동 | offset( [geom], 4000, 3000) | Geometry |
Type | Description |
---|---|
GeoJSON | Output features. |
json = CalculateField(inputFeatures="geoband:seoul_series", expression="[a1_2005] / [a1_2000] / 100", fieldName="rate_result",
saveFileName="json_R/result_CalculateField.json")
jsonData <- readLines('json_R/result_CalculateField.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 10) %>%
addTiles() %>%
addPolygons(data = df2)
map
폴리곤 또는 라인 피처 레이어에 필드를 추가하여 길이(둘레)를 계산합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The input line or polygon features to be calculated. 폴리곤 또는 라인 피처 타입이어야 한다. |
lengthField | string | The length field that will be calculated. geom_len is a default. |
|
lengthUnit | string | lengthField Unit 다음 값중 하나가 될수 있다. [Default, Meters, Kilometers, Inches, Feet, Yards, Miles, NauticalMiles] |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = CalculateLength(inputFeatures="geoband:overlay01", lengthField="mylength", lengthUnit="Meters",
saveFileName="json_R/result_CalculateLength.json")
jsonData <- readLines('json_R/result_CalculateLength.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0065831, lat = 37.5538699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
피처 레이어에서 Geometry가 동일한 피처는 하나만 남기고 삭제합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The input features to be processed. 포인트, 라인, 폴리곤 모두 가능하며, 각 피처의 Geometry가 동일한 경우에만 중복으로 처리한다. |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = DeleteDuplicates(inputFeatures="geoband:market", saveFileName="json_R/result_DeleteDuplicates.json")
jsonData <- readLines('json_R/result_DeleteDuplicates.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 11) %>%
addTiles() %>%
addMarkers(data = df2)
map
피처 레이어의 모든 피처를 x, y offset만큼 이동합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | Input features that can be multipoint, line, and polygon. |
offsetX | string | X offset. Format is double | |
offsetY | string | Y offset. Format is double | |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = OffsetFeatures(inputFeatures="geoband:sgg", offsetX="1000", offsetY="1000", saveFileName="json_R/result_OffsetFeatures.json")
jsonData <- readLines('json_R/result_OffsetFeatures.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 10) %>%
addTiles() %>%
addPolygons(data = df2)
map
라인의 교차점을 지나 특정 거리만큼 연장된 라인 부분(Dangles)을 제거합니다.
Name | Type | Required | Description |
---|---|---|---|
lineFeatures | feature_name | O | The line features to be trimmed. lineFeatures 레이어는 라인 타입 이어야 한다. |
dangleLength | string | Line segments that are shorter than the specified Dangle Length and do not touch another line at both endpoints (dangles) will be trimmed. Format is double | |
deleteShort | boolean | Controls whether line segments which are less than the dangle length and are free-standing will be deleted. Default is True. deleteShort 파라미터가 True이고, 시작/끝점 모두 다른 라인과 교차하지 않는 독립적인 라인이 dangleLength 길이보다 작으면 삭제된다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = TrimLine(lineFeatures="geoband:line", dangleLength="10000", deleteShort="True",
saveFileName="json_R/result_TrimLine.json")
jsonData <- readLines('json_R/result_TrimLine.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0365831, lat = 37.5638699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
Clip할 폴리곤 피처 레이어를 설정하여 피처 레이어를 잘라냅니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | 클립 대상 feature |
clipFeatures | feature_name | O | 클립 영역 featrue. 반드시 Polygon 또는 MultiPolygon feature 여야 한다 |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = ClipWidhFeatures(inputFeatures="geoband:seoul_series", clipFeatures="geoband:overlay01",
saveFileName="json_R/result_ClipWidhFeatures.json")
jsonData <- readLines('json_R/result_ClipWidhFeatures.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 126.9565831, lat = 37.5338699, zoom = 12) %>%
addTiles() %>%
addPolygons(data = df2)
map
피처 타입이 같은 여러 레이어를 하나의 레이어로 병합합니다.
Name | Type | Required | Description |
---|---|---|---|
features | feature_list | O | Input feature collections to be merge. |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = MergeFeatures(features="geoband:overlay01,geoband:overlay02", saveFileName="json_R/result_MergeFeatures.json")
jsonData <- readLines('json_R/result_MergeFeatures.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0065831, lat = 37.5338699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
최소 경계를 추출합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The input features that can be multipoint, line, polygon. |
singlePart | boolean | singlePart가 True이고 Geometry가 MultiPart인 경우 모든 Part의 Geometry를 변환한다. | |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = FeatureToConvexHull(inputFeatures="geoband:sid", singlePart="True", saveFileName="json_R/result_FeatureToConvexHull.json")
jsonData <- readLines('json_R/result_FeatureToConvexHull.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 10) %>%
addTiles() %>%
addPolygons(data = df2)
map
폴리곤 또는 라인 레이어를 교차하는 노드를 기준으로 분할한 라인 레이어를 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The input features that can be line or polygon. |
preserveAttributes | boolean | Specifies whether to preserve or omit the input attributes in the output features. Default is True. | |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = FeatureToLine(inputFeatures="geoband:overlay01", preserveAttributes="True", saveFileName="json_R/result_FeatureToLine.json")
jsonData <- readLines('json_R/result_FeatureToLine.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0065831, lat = 37.5538699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
피처 레이어에서 각 피처를 둘러싸는 최소 경계 원 폴리곤으로 변환합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The input features that can be multipoint, line, polygon. |
singlePart | boolean | Specifies whether to use one circle for each entire multipart feature or one circle per part of a multipart feature. singlePart가 True이고 Geometry가 MultiPart인 경우 모든 Part의 Geometry를 변환한다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = FeatureToMinimumBoundingCircle(inputFeatures="geoband:overlay01", singlePart="True",
saveFileName="json_R/result_FeatureToMinimumBoundingCircle.json")
jsonData <- readLines('json_R/result_FeatureToMinimumBoundingCircle.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5538699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
피처 레이어에서 각 피처를 둘러싸는 최소 경계 직사각형 폴리곤으로 변환합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The input features that can be multipoint, line, polygon. |
singlePart | boolean | Specifies whether to use one circle for each entire multipart feature or one circle per part of a multipart feature. | |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = FeatureToMinimumRectangle(inputFeatures="geoband:overlay01", singlePart="True",
saveFileName="json_R/result_FeatureToMinimumRectangle.json")
jsonData <- readLines('json_R/result_FeatureToMinimumRectangle.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5538699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
피처 레이어에서 각 피처를 둘러싸는 최소 경계 8각형 폴리곤으로 변환합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The input features that can be multipoint, line, polygon. |
singlePart | boolean | Specifies whether to use one circle for each entire multipart feature or one circle per part of a multipart feature. singlePart가 True이고 Geometry가 MultiPart인 경우 모든 Part의 Geometry를 변환한다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = FeatureToOctagonalEnvelope(inputFeatures="geoband:overlay01", singlePart="True",
saveFileName="json_R/result_FeatureToOctagonalEnvelope.json")
jsonData <- readLines('json_R/result_FeatureToOctagonalEnvelope.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5538699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
피처 레이어를 중심점 등의 포인트 피처 레이어로 변환합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The input features that can be multipoint, line, polygon. |
inside | boolean | Centroid(False), Inside(True, Default) inputFeatures가 폴리곤이고 inside 가 Ture이면 중심점은 반드시 폴리곤 내에 포함된다. |
|
singlePart | boolean | Centroid of each part. Default is False. singlePart가 True이고 Geometry가 MultiPart인 경우 모든 Part의 Geometry를 중심점으로 변환한다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = FeatureToPoint(inputFeatures="geoband:emd", inside="True", singlePart="False",
saveFileName="json_R/result_FeatureToPoint.json")
jsonData <- readLines('json_R/result_FeatureToPoint.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 11) %>%
addTiles() %>%
addMarkers(data = df2)
map
MultiPart로 구성된 피처 레이어를 SinglePart 피처 레이어로 변환합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | inputFeatures 파라미터는 반드시 Multipart(MultiPoint, MultiLineString, MultiPolygon) 피처 타입이어야 한다. |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = MultipartToSinglepart(inputFeatures="geoband:seoul_series", saveFileName="json_R/result_MultipartToSinglepart.json")
jsonData <- readLines('json_R/result_MultipartToSinglepart.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 10) %>%
addTiles() %>%
addPolygons(data = df2)
map
폴리곤 또는 라인 데이터를 이용해 설정한 버텍스 위치에 따른 포인트 피처 레이어를 생성합니다
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The input features that can be line or polygon. |
location | string | 아래 location 참조 |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = VerticesToPoints(inputFeatures="geoband:line", location="Mid", saveFileName="json_R/result_VerticesToPoints.json")
jsonData <- readLines('json_R/result_VerticesToPoints.json')
jsonData
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 11) %>%
addTiles() %>%
addMarkers(data = df2)
map
폴리곤 또는 라인 피처의 라인 세그먼트마다 설정한 Tolerance 간격의 버텍스를 추가합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The input line or polygon features to be calculated. |
tolerance | string | Distance tolerance to densify ex) 10.0 or filter expression. tolerance 파라미터는 수 또는 수식을 사용할 수 있다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = Densify(inputFeatures="geoband:line", tolerance="100", saveFileName="json_R/result_Densify.json")
jsonData <- readLines('json_R/result_Densify.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5498699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
입력 레이어의 폴리곤 객체들을 하나의 객체로 추출합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | Input features. |
dissolveField | string | O | The field on which to dissolve features. |
statisticsFields | string | The fields and statistics with which to summarize attributes. Statistics fields(Function.PropertyName): First, Last, Sum, Mean, Min, Max, Std, Count. |
|
useMultiPart | boolean | Specifies whether multipart features are allowed in the output features | |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = Dissolve(inputFeatures="geoband:seoul_series", dissolveField="sid_nm", statisticsFields="Mean.a1_2000,Sum.a1_2001",
useMultiPart="False",
saveFileName="json_R/result_Dissolve.json")
jsonData <- readLines('json_R/result_Dissolve.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 10) %>%
addTiles() %>%
addPolygons(data = df2)
map
이웃하는 폴리곤과의 공유 면적 또는 길이를 기준으로 Sliver 폴리곤을 제거합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The layer whose polygons will be merged into neighboring polygons. 반드시 폴리곤 타입이어야 한다. |
option | string | The options specify which method will be used for eliminating features. [Length, LengthArea, SmallArea] option 파라미터는 Sliver 폴리곤을 제거하는 기준으로 공유하는 길이가 가장 큰 이웃(Length), 면적이 가장 크거나(LargeArea) 작은 이웃(SmallArea)으로 Sliver 폴리곤을 편입한다. |
|
exception | cql | The exception filter used to identify features that will not be altered. exception 파라미터는 처리에 제외할 피처를 필터로 설정한다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = Eliminate(inputFeatures="geoband:overlay01", option="LargeArea", exception="nam='f1'",
saveFileName="json_R/result_Eliminate.json")
jsonData <- readLines('json_R/result_Eliminate.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0065831, lat = 37.5538699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
폴리곤 피처 레이어의 모든 Holes(Interior Rings) 또는 설정한 크기보다 작은 Holes을 제거합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The polygon features to be removed. |
minimumArea | string | Remove holes smaller than this area expression. Ex) 10.0 or filter expression. minimumArea는 숫자 또는 필드값 등을 조합하여 숫자를 반환하는 Expression이 가능하다. minimumArea 파라미터의 값이 0이면 폴리곤의 모든 Hole(Interior Ring)이 삭제되고, 0보다 크면 해당 값보다 면적이 작은 Hole만 삭제된다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = RemoveHoles(inputFeatures="geoband:overlay02", minimumArea="100", saveFileName="json_R/result_RemoveHoles.json")
jsonData <- readLines('json_R/result_RemoveHoles.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0065831, lat = 37.5538699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
Douglas-Peucker 단순화 알고리즘을 이용하여 라인 피처를 단순화합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The input line or polygon features to be simplified. |
tolerance | string | O | Distance tolerance to simplify. ex) 10.0 or filter expression. tolerance 파라미터는 수 또는 수식을 사용할 수 있으며, Douglas–Peucker 알고리즘을 사용한다. |
preserveTopology | boolean | If True, ensures that simplified features are topologically valid. Default is True. preserveTopology 파라미터 값이 True이면, Tolerance 값에 상관없이 최소한의 토폴로지 규칙은 유지된다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = Simplify(inputFeatures="geoband:overlay02", tolerance="100", preserveTopology="True", saveFileName="json_R/result_Simplify.json")
jsonData <- readLines('json_R/result_Simplify.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0065831, lat = 37.5538699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
두 레이어간 중첩 분석을 수행하여 처음 레이어 영역만 추출합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | input features |
differenceFeatures | feature_name | O | difference features |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = Difference(inputFeatures="geoband:sgg", differenceFeatures="geoband:overlay01", saveFileName="json_R/result_Difference.json")
jsonData <- readLines('json_R/result_Difference.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 10) %>%
addTiles() %>%
addPolygons(data = df2)
map
중복되는 영역을 추출합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | inpurt features Point, Line, Polygon모두 가능 |
overlayFeatures | feature_name | O | overlay features |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = Intersect(inputFeatures="geoband:overlay01", overlayFeatures="geoband:overlay02", saveFileName="json_R/result_Intersect.json")
jsonData <- readLines('json_R/result_Intersect.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0065831, lat = 37.5338699, zoom = 12) %>%
addTiles() %>%
addPolygons(data = df2)
map
두개의 입력 피처 레이어에 대한 Union Overlay 분석을 수행합니다. 출력 레이어는 두 피처의 모든 속성값이 유지됩니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | input features Point, Line, Polygon모두 가능 |
overlayFeatures | feature_name | O | overlay features |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = Union(inputFeatures="geoband:overlay01", overlayFeatures="geoband:overlay02", saveFileName="json_R/result_Union.json")
jsonData <- readLines('json_R/result_Union.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 126.9565831, lat = 37.5338699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
두 레이어간 업데이트 중첩 분석을 수행하여 공간 정보를 갱신합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | Input features. |
updateFeatures | feature_name | O | Update features. |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = Update(inputFeatures="geoband:overlay01", updateFeatures="geoband:overlay02", saveFileName="json_R/result_Update.json")
jsonData <- readLines('json_R/result_Update.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0065831, lat = 37.5538699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
사용자가 정의한 Buffer 거리, Buffer 필드 또는 Buffer Expression 수식을 이용하여 Buffer 분석을 수행합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | Buffer 분석 대상 feature. 포인트, 라인, 폴리곤 모두 가능 |
distance | string | O | The distance expression used to create distance. distance expression은 숫자, 숫자가 리턴되는 함수식 모두 가능하다. 참조 |
distanceUnit | string | distance 단위. 다음 값중 하나가 될수 있다. [Default, Meters, Kilometers, Inches, Feet, Yards, Miles, NauticalMiles] |
|
quadrantSegments | string | The number of line segments used to represent a quadrant of a circle. Default is 8. | |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = BufferFeatures(inputFeatures="geoband:theaters", distance=1, distanceUnit="Kilometers", quadrantSegments="4",
saveFileName="json_R/result_BufferFeatures.json")
jsonData <- readLines('json_R/result_BufferFeatures.json')
df = readOGR(jsonData)
#proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5638699, zoom = 11) %>%
addTiles() %>%
addPolygons(data = df2)
map
피처별 중심점을 기준으로 방사형 Polar 격자를 생성하며 같이 주어진 반경리스트 기준으로 여러 개의 격자를 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
origin | feature_name | O | The center features of polar grids. |
radius | string | O | The list of radius(unit:data unit): Ex) 200, 300, 400, 500. |
radialType | string | Radial Type: Polar (Default), Base. | |
sides | string | The number of sides. sides 파라미터의 기본값(8)을 사용하는 경우 azimuth 필드가 추가되고 NE, N, NW, W, SW, S, SE, E 등의 방향값이 계산된다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = PolarGridsFromFeatures(origin="geoband:overlay01", radius="400, 600, 800, 1000", radialType="Polar", sides="8",
saveFileName="json_R/result_PolarGridsFromFeatures.json")
jsonData <- readLines('json_R/result_PolarGridsFromFeatures.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 126.9499831, lat = 37.5338699, zoom = 12) %>%
addTiles() %>%
addPolygons(data = df2)
map
설정한 범위에 대해서 설정된 반경 크기의 원형 그리드를 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
csr | string | O | 범위(extent) 지정에 사용할 좌표기준계 |
minX | string | O | 범위(extent) 지정에 사용할 최소 X 좌표 |
minY | string | O | 범위(extent) 지정에 사용할 최소 Y 좌표 |
maxX | string | O | 범위(extent) 지정에 사용할 최대 X 좌표 |
maxY | string | O | 범위(extent) 지정에 사용할 최대 Y 좌표 |
boundsSource | feature_name | Bounds Source Features. | |
radius | string | O | Radius of the circle. Format is double. |
circularType | string | Circular Type: Grid (default), Hex. | |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = CircularGrid(csr="EPSG:4326", minX="128.7617", minY="34.9891", maxX="129.3056", maxY="35.389",
boundsSource="geoband:tl_scco_sig", radius="0.05", circularType="Hex",
saveFileName="json_R/result_CircularGrid.json")
jsonData <- readLines('json_R/result_CircularGrid.json')
map = leaflet() %>% setView(lng = 129.0001, lat = 35.1998, zoom = 9) %>%
addTiles() %>%
addGeoJSON(jsonData, weight = 2, color = "#4444ff", fill = FALSE)
map
포인트 레이어로부터 딜로니 삼각망을 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The point input features from which delaunay triangulations will be generated. |
clipArea | GeoJSON | Clip area polygon. clipArea 파라미터가 주어지면 해당 영역으로 클립한 폴리곤을 반환한다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = DelaunayTriangulation(inputFeatures="geoband:bank",
clipArea='{"type": "Polygon","coordinates": [[[126.76449999403584, 37.428299988829345],[127.1837999716712, 37.428299988829345],[127.1837999716712, 37.70149998971315],[127.1837999716712, 37.70149998971315],[126.76449999403584, 37.428299988829345]]]}',
saveFileName="json_R/result_DelaunayTriangulation.json")
jsonData <- readLines('json_R/result_DelaunayTriangulation.json')
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5538699, zoom = 10) %>%
addTiles() %>%
addGeoJSON(jsonData, weight = 2, color = "#4444ff", fill = FALSE)
map
범위에 따른 개수로 격자 그리드를 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
csr | string | O | 범위(extent) 지정에 사용할 좌표기준계 |
minX | string | O | 범위(extent) 지정에 사용할 최소 X 좌표 |
minY | string | O | 범위(extent) 지정에 사용할 최소 Y 좌표 |
maxX | string | O | 범위(extent) 지정에 사용할 최대 X 좌표 |
maxY | string | O | 범위(extent) 지정에 사용할 최대 Y 좌표 |
boundsSource | feature_name | Bounds Source Features. boundsSource 파라미터를 설정한 경우 boundsSource와 Intersect되는 격자만 생성한다. |
|
boundaryInside | boolean | boundsSource 파라미터를 설정하고 boundaryInside 파라미터가 True인 경우 boundsSource 내부에 포함되는 격자만 생성한다. | |
columns | string | O | Number of columns. |
rows | string | O | Number of Rows. |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = FishnetCount(csr="EPSG:4326", minX="128.7617", minY="34.9891", maxX="129.3056", maxY="35.389",
boundsSource="geoband:tl_scco_sig", boundaryInside="False", columns="10", rows="10",
saveFileName="json/result_FishnetCount.json")
jsonData <- readLines('json_R/result_FishnetCount.json')
map = leaflet() %>% setView(lng = 129.0001, lat = 35.1998, zoom = 10) %>%
addTiles() %>%
addGeoJSON(jsonData, weight = 2, color = "#4444ff", fill = FALSE)
map
범위와 가로, 세로 크기를 정의하여 Fishnet 격자를 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
csr | string | O | 범위(extent) 지정에 사용할 좌표기준계 |
minX | string | O | 범위(extent) 지정에 사용할 최소 X 좌표 |
minY | string | O | 범위(extent) 지정에 사용할 최소 Y 좌표 |
maxX | string | O | 범위(extent) 지정에 사용할 최대 X 좌표 |
maxY | string | O | 범위(extent) 지정에 사용할 최대 Y 좌표 |
boundsSource | feature_name | Bounds Source Features. boundsSource 파라미터를 설정한 경우 boundsSource와 Intersect되는 격자만 생성한다. |
|
boundaryInside | boolean | Bounds Inside. boundsSource 파라미터를 설정하고 boundaryInside 파라미터가 True인 경우 boundsSource 내부에 포함되는 격자만 생성한다. |
|
width | string | O | Width of Each Cell. Format is double |
height | string | O | Height of Each Cell. Format is double |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = FishnetSize(csr="EPSG:4326", minX="128.7617", minY="34.9891", maxX="129.3056", maxY="35.389",
boundsSource="geoband:tl_scco_sig", boundaryInside="False", width="0.05", height="0.05",
saveFileName="json_R/result_FishnetSize.json")
jsonData <- readLines('json_R/result_FishnetSize.json')
map = leaflet() %>% setView(lng = 129.0001, lat = 35.1998, zoom = 10) %>%
addTiles() %>%
addGeoJSON(jsonData, weight = 2, color = "#4444ff", fill = FALSE)
map
입력 피처 레이어를 이용하여 Thiessen Polygon을 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The point input features from which thiessen polygons will be generated. 포인트, 라인, 폴리곤 모두 가능하지만, 무게중심점을 추출하여 Thiessen Polygon을 생성한다. |
attributes | string | Attribute mode: ONLY_FID (default), ALL (retain input feature’s attribute). Attributes 파라미터가 ALL 인 경우 inputFeatures의 모든 속성값을 유지한다. |
|
clipArea | GeoJSON | The clip area polygon geometry. clipArea 파라미터가 주어지면 해당 영역으로 클립한 폴리곤을 반환한다. |
|
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = ThiessenPolygon(inputFeatures="geoband:bank", attributes="OnlyFID",
clipArea='{"type": "Polygon","coordinates": [[[126.76449999403584, 37.428299988829345],[127.1837999716712, 37.428299988829345],[127.1837999716712, 37.70149998971315],[127.1837999716712, 37.70149998971315],[126.76449999403584, 37.428299988829345]]]}',
saveFileName="json_R/result_ThiessenPolygon.json")
jsonData <- readLines('json_R/result_ThiessenPolygon.json')
map = leaflet() %>% setView(lng = 127.0565831, lat = 37.5838699, zoom = 10) %>%
addTiles() %>%
addGeoJSON(jsonData, weight = 2, color = "#4444ff", fill = FALSE)
map
크기와 범위를 설정하여 삼각형 그리드를 생성합니다.
Name | Type | Required | Description |
---|---|---|---|
csr | string | O | 범위(extent) 지정에 사용할 좌표기준계 |
minX | string | O | 범위(extent) 지정에 사용할 최소 X 좌표 |
minY | string | O | 범위(extent) 지정에 사용할 최소 Y 좌표 |
maxX | string | O | 범위(extent) 지정에 사용할 최대 X 좌표 |
maxY | string | O | 범위(extent) 지정에 사용할 최대 Y 좌표 |
boundsSource | feature_name | Bounds Source Features. boundsSource 파라미터를 설정한 경우 boundsSource와 Intersect되는 삼각형만 생성한다. |
|
size | string | O | Grid Size. Format is double |
orientation | string | Orientation: FLAT (default), ANGLED. | |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = TriangularGrid(csr="EPSG:4326", minX="128.7617", minY="34.9891", maxX="129.3056", maxY="35.389",
boundsSource="geoband:tl_scco_sig", size="0.05", orientation="ANGLED",
saveFileName="json_R/result_TriangularGrid.json")
jsonData <- readLines('json_R/result_TriangularGrid.json')
map = leaflet() %>% setView(lng = 129.0001, lat = 35.1998, zoom = 10) %>%
addTiles() %>%
addGeoJSON(jsonData, weight = 2, color = "#4444ff", fill = FALSE)
map
공간통계 분석과 관련된 프로세스 그룹입니다.
피처 레이어의 모든 피처들에 대해 총 거리의 합이 가장 최소가 되는 피처(Central Feature)을 반환합니다.
Name | Type | Required | Description |
---|---|---|---|
inputFeatures | feature_name | O | The features containing a distribution of features from which to identify the most centrally located feature. |
distanceMethod | string | Specifies how distances are calculated from each feature to neighboring features. Euclidean (default) or Manhattan. [Euclidean, Manhattan] |
|
weightField | string | The numeric field used to weight distances in the origin-destination distance matrix. | |
selfPotentialWeightField | string | The field representing self-potential. The distance or weight between a feature and itself. | |
caseField | string | The field used to group features for separate central feature computations. | |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = CentralFeature(inputFeatures="geoband:school", distanceMethod="Euclidean", weightField="sgg_cd",
selfPotentialWeightField="sgg_cd", caseField="sch_cls",
saveFileName="json_R/result_CentralFeature.json")
jsonData <- readLines('json_R/result_CentralFeature.json')
df = readOGR(jsonData)
proj4string(df) <- from_crs
df2 <- spTransform(df, to_crs)
map = leaflet() %>% setView(lng = 127.0365831, lat = 37.5338699, zoom = 12) %>%
addTiles() %>%
addMarkers(data = df2)
map
feature를 대상으로 쿼리합니다.
Name | Type | Required | Description |
---|---|---|---|
features | feature_name | O | 쿼리 대상 feature 명 |
attribute | string | 결과에 포함시킬 attribute | |
filter | cql | 쿼리 조건문 | |
saveFileName | string | 결과를 저장할 파일명 |
Type | Description |
---|---|
GeoJSON | Output features. |
json = Query(features="geoband:theaters", attribute="brand", filter="sgg_cd > 11500 and sgg_cd < 11600",
saveFileName="json_R/result_Query.json")
json
공간 정보의 객체 유형을 객체별로 추출합니다.
Name | Type | Required | Description |
---|---|---|---|
geom | GeoJSON | O | Input geometry |
Type | Description |
---|---|
string | geometry type [POINT, LINESTRING, POLYGON, MULTIPOINT, MULTILINESTRING, MULTIPOLYGON, GEOMETRYCOLLECTION] |
result = GeometryType(geom='{"type": "Polygon","coordinates": [[[14111359.59, 4498975.62],[14158035.85, 4498975.62],[14158035.85, 4537343.17],[14111359.59, 4537343.17],[14111359.59, 4498975.62]]]}')
result