2012-06-12 2 views
2

아래 주어진 코드 조각은 범례가있는 파일의 이미지를 읽고 표시합니다. R이 예를 들어 -9999와 같은 값을 고려하지 않거나 범례를 그릴 때 다른 값을 고려하지 않도록하려면 어떻게해야합니까?범례에서 일부 값을 피하는 방법은 무엇입니까?

conne <- file("C:\\DEM.bin", "rb") 
image(t(t(y)),ylim=c(1,0)) 
image.plot(t(t(y)), add = FALSE, legend.shrink = 0.9,legend.width = 1.2, 
      legend.mar = NULL, graphics.reset = FALSE, horizontal = FALSE, bigplot = NULL, 
      smallplot = NULL,legend.only = FALSE,lab.breaks=NULL, axis.args=NULL)) 
+0

왜 t (t (y))가 두 번 전치하면 같은 행렬이됩니다 ... –

답변

5

(데이터 세트가 재현되지 않음)의이 모형 데이터 집합을 만들어 보자 :

m = matrix(runif(100), 10, 10) 
m[sample(1:10, size = 2), sample(1:10, size = 2)] = -9999 

매트릭스 m는 이제 두 개의 값을 포함하면 플롯하지 않으 :

enter image description here

해결책은 그들에게 NA을 만드는 것이며,이 경우 R은 값이 누락되었음을 알게 될 것입니다 :

m[m == -9999] <- NA 
image(m) 

enter image description here

NA 값은 이제 무시하고 흰색 픽셀로 대체하고, 이미지가 정상적인 보이는 있습니다. 당신이 NA을 만들고 싶어 여러 값이있는 경우 :

m[m %in% c(-9999, 1e30, -1)] <- NA 

이제 목록에있는 모든 값은 NA로 표시됩니다.

관련 문제