2014-04-22 12 views
2

저는 ArcMap을 사용하여 공간 데이터 서버의 GIS 데이터에 액세스했습니다. 나는 R.R에서 GIS 서버의 데이터를 가져 오는 방법은 무엇입니까?

나는 성공적으로 로컬로 저장 쉐이프 파일 (예 : http://www.nceas.ucsb.edu/scicomp/usecases/ReadWriteESRIShapeFiles)

을 열고 매핑 maptools을 사용 rgdal 한 R.에 shape 파일을 읽는 방법을 알고

내에서 동일한 작업을 수행하는 방법을 알아낼 할 내 문제는 데이터가 로컬에 저장되지 않고 응용 프로그램 서버에 저장되는 경우입니다. 오라클 데이터베이스라고 생각합니다. 1. 서버 2. 인스턴스 (숫자) 3. 데이터베이스 4. 사용자 및 5. 암호에 대한 정보를 받았습니다. 일반적으로 예를 들어 설명 하겠지만 외부 사용자가 서버에 액세스 할 수 있는지 여부는 의심 스럽습니다. 예를 들어

여기에 읽기 및 R

library(rgdal) 
    ogrInfo(".", "nw-rivers") 
    centroids.rg <- readOGR(".", "nw-centroids") 
    plot(centroids.rg) 

에서 로컬 파일을 플롯하는 방법 "." 로컬 디렉토리를 가리 킵니다. 서버의 데이터에 액세스하려면 어떻게해야합니까? 코드의 실제 구문이 도움이 될 것입니다.

답변

2

당신은 GDAL/OGR를 사용하여 Oracle 공간 데시벨에서 데이터를 읽을 수 있습니다 : 당신이 당신의 GDAL/OGR 설치에서 드라이버가

http://www.gdal.org/ogr/drv_oci.html

합니다. 경우

require(rgdal) 
ogrDrivers() 

오라클 드라이버를 보여줍니다 다음 당신은 바로 이곳에있는 모든 매개 변수와 함께 readOGR를 사용할 수 있습니다.

추측에서

하고 PostGIS와 예와 비유로, 나는 시도는 말할 것입니다 : 내가 한 경우

dsn="OCI:userid/[email protected]_instance:") 
ogrListLayers(dsn) 
s = readOGR(dsn, layername) 

하지만 난 그것을 테스트하는 오라클 서버가없는 (나는 도랑 것 내일은 PostGIS를 위해, 요트에 라이센스를 저장하는 데 소비합니다.) 어쨌든 오라클 서버는 확실하지 않습니다. 공간 데이터베이스에 연결하는 일반적인 원칙은 동일합니다. OGR 드라이버가 있는지 확인하고 dsn 매개 변수가 어떤 모양인지 알아보십시오.

또 다른 방법은 ODBC 또는 다른 비 공간적 R 데이터베이스 연결을 사용하는 것입니다. 그러나 WKB 또는 WKT 형식의 공간 데이터를 다시 얻고 SpatialWhatevers (점, 선, 다각형)로 변환해야합니다.

PostGIS와 예제는 여기에 있습니다 : 빠른 응답을위한

https://gis.stackexchange.com/questions/64950/which-is-the-best-way-of-working-with-postgis-data-in-r

+0

감사합니다 ... 내가 Server와 같은 정보가 있다면 - XXX-YYY 인스턴스 - 1234 데이터베이스 - 사용자 ABCDE -을 myLogin PWORD - mypassword dsn의 구문은 무엇입니까? – climatron

+0

패키지 [wkb] (http://cran.r-project.org/web/packages/wkb/index.html)의'readWKB' 함수를 사용하여 WKB를 공간 객체로 변환 할 수 있으며 WKT를 Spatial으로 변환 할 수 있습니다 패키지 [rgeos] (http://cran.r-project.org/web/packages/rgeos/index.html)에있는'readWKT' 함수를 가진 객체. – ianmcook