2012-04-13 2 views
3

어리석은 질문 일지 모르지만 나는이 일을 많이 해 본 경험이 없습니다. R에서 등고선을 만들기 위해 다각형에서 좌표를 가져와야합니다. 약 1000 포인트의 복잡한 다각형이므로 좌표를 수동으로 입력하는 것이 좋습니다. 또한 내가 컨투어 내부의 일부 개체의 xy 위치를 추출해야합니다. Illustrator와 Inkscape를 사용하여 모든 정보가 들어있는 svg 파일을 만들려고했습니다. svg 파일에 모든 정보가 포함되어 있다고 생각하면 좋은 옵션입니다. 경로 또는 다각형의 끄덕임에서 좌표를 추출하는 방법이 있습니까? 또는이 프로세스를 수행하는 다른 간단한 방법이 있습니까? 약 30 개의 이미지를 처리해야하기 때문에 어떤 도움을 주시면 감사하겠습니다. 건배svg 파일에서 경로 좌표를 얻는 방법 R

+0

샘플 파일에 대한 링크 또는 파일을 다시 만드는 방법을 사용하면 훨씬 쉽게 대답 할 수 있습니다. http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example –

+0

svg 파일을 제공하지 않아 죄송합니다. 해당 섹션을 복사했습니다 : –

+0

잘 모름 파일을 첨부하는 방법에는 많은 점이 있습니다. 이것은 단지 예일 뿐이므로 다각형에서 좌표를 가져온 다음 텍스트에서 좌표를 가져와야합니다. 나는 그것이 의미가 있기를 바란다. –

답변

6

XML 패키지를 사용하여 좌표를 추출 할 수 있습니다.

# Sample data 
library(RCurl) 
url <- "http://upload.wikimedia.org/wikibooks/en/a/a8/XML_example_polygon.svg" 
svg <- getURL(url) 

# Parse the file 
library(XML) 
doc <- htmlParse(svg) 

# Extract the coordinates, as strings 
p <- xpathSApply(doc, "//polygon", xmlGetAttr, "points") 

# Convert them to numbers 
p <- lapply(strsplit(p, " "), function(u) 
    matrix(as.numeric(unlist(strsplit(u, ","))),ncol=2,byrow=TRUE)) 
p 

그러나 이것은 다각형에 적용될 변환을 무시합니다.

+0

고마워, 좋은 작품, XML 패키지를 사용하여 할했지만 htmlParse 사용하지 않은 그래서 문제가 있다고 생각합니다. –

관련 문제