2016-10-05 6 views
0

크기가 다른 21,000 개의 그리드 셀 (i는 [1 : 175]이고 j는 [1 : 120] 임)을 포함하는 공간 모델로 작업했습니다. 위도와 경도 값은 i 및 j 차원의 두 개의 개별 배열 (lat_array, lon_array)에 있습니다.R : x, y 공간 좌표에서 그리드를 그릴 수 있습니까?

플로팅 좌표 :

> plot(lon_array, lat_array, main='Grid Coordinates') 

결과 : enter image description here 내 질문 : 그것은 격자로서가 아닌 점으로이 공간 좌표를 플롯 할 수 있습니까? 누구든지이 일을 할 수있는 패키지 또는 기능을 알고 있습니까? 나는이 성질에 온라인으로 무엇이든을 찾아 낼 수 있지 않았다.

감사합니다.

+0

좌표를 그리드로 표시한다는 것은 무엇을 의미합니까? 점이 그리드의 모서리이고 인접한 모서리를 선분으로 연결하고 싶습니까? 아니면 그리드 셀의 중심을 갖고 각 점 주위에 영역을 그리기를 원합니까? –

+0

@ 에지, 주석 주셔서 감사합니다, 포인트는 그리드 셀의 중심이며 각 지점 주위에 영역을 그려야합니다. –

답변

2

우선 평면에서 본질적으로 구 좌표 (위도/경도)를 플로팅하는 것이 항상 위험합니다. 일반적으로 어떤 방법으로 프로젝트를 투영해야하지만, sp 패키지와 기능 spTransform 또는 그와 유사한 것을 탐색 할 수 있도록 남겨 둘 것입니다.

원칙적으로 deldir 패키지를 사용하여 멋진 그리드를 제공하는 점의 Dirichlet 테셀레이션을 계산할 수 있습니다. 그러나 지역의 경계에서 큰 셀이 방사되지 않도록 경계 영역이 필요합니다. 나는 개인적으로 내가 deldir 당신에게 직접 명령을 내릴 수 없습니다 deldir를 호출하는 spatstat를 사용하지만, spatstat에서 내가 좋아하는 뭔가를 할 것이다 : 나는 아직 테스트하지 않은

library(spatstat) 
plot(lon_array, lat_array, main='Grid Coordinates') 
W <- clickpoly(add = TRUE) # Now click the region that contains your grid 
i_na <- is.na(lon_array) | is.na(lat_array) # Index of NAs 
X <- ppp(lon_array[!i_na], lat_array[!i_na], window = W) 
grid <- dirichlet(X) 
plot(grid) 

을 그리고 내가 한 번이 답을 업데이트합니다 일부 인공적인 데이터로 테스트 할 수있는 기회를 얻으십시오. 큰 문제는 Dirichlet의 모자이크를 계산하는 데 오랜 시간이 걸릴 수있는 데이터 집합의 크기입니다. 나는 최대 3000 포인트의 데이터 집합에 dirichlet을 호출하려고 시도했습니다 ...

+0

@Ege에 대한 답변. 나는 데이터가'ppp' 함수를 깨뜨린 것 같은 육지상의 점 (이것은 유체 역학 모델에 대한 그리드)을 나타내는 NA로서 누락 된 값을 포함한다고 언급해야한다. –

+0

어딘가에 데이터를 제공 할 수 있습니까? 업데이트 된 답변에서'ppp'를 호출 할 때'NA' 값을 생략 할 수 있습니다. 점 주위의 다각형 영역을 성공적으로 클릭 했습니까? –

+0

도움을 주셔서 감사합니다. @이지. 불행히도 공유 권한이 없으므로 데이터에 대한 액세스 권한을 제공 할 수 없습니다. 이 방법은 클릭하는 방법 (강을 나타내는 매우 미세한 스케일 영역이 있음)을 사용하여 데이터에 잘 적응하는 데 매우 어려움이 있지만 매우 효과적입니다. 어쩌면 데이터에 더 잘 맞는 창에 늑골 경계의 모양 파일을 사용할 수 있습니까? –