2016-09-18 1 views
0

R에서 원근감 그래프를 만들고 계속 증가하는 'x'및 'y'오류를 계속 가져 오려고합니다. 많은 옵션을 시도했지만 ' t는이를 알아낼. 어떤 도움이 이해 될 것이다!R "증가하는 'x'와 'y'값이 예상 됨

fit.A <- data.frame(Temp.f="Ambient",x,y) 
fit.A$pred <- predict(model=lrNH4,newdata=fit.A) 

x 
[1] 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 
[17] 0.619 0.626 0.630 0.635 0.649 0.656 1.902 1.947 1.967 2.056 2.689 2.707 2.758 2.760 2.943 2.978 
[33] 2.992 3.020 4.564 4.854 5.893 6.029 6.051 6.067 

y 
[1] 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 
[17] 0.479 0.530 0.566 0.605 0.635 0.726 1.909 1.916 2.128 2.195 2.636 2.645 2.747 2.777 2.943 3.057 
[33] 3.169 3.203 4.657 4.813 5.956 5.986 6.154 6.157 

persp(x,y,z=matrix(fit.A$pred,nrow=length(x),ncol=length(y),byrow=TRUE), 
zlim=c(140,700)) 

persp.default (오류가 X, Y, Z = 매트릭스 (fit.A $ PRED, nrow = 길이 (X), : 예상되는 'x'및 'y'값이 증가합니다.

+0

[이 게시물] (https://stackoverflow.com/questions/24686875/plotting-a-3d-surface-in-r)에 'z'가 어떻게 작성되었는지 확인하십시오. –

답변

0

xy 값이 증가하지 않습니다. - 그들은 행의 첫 번째 일괄 처리에 대해 0에 머물러 있습니다.

원근감 그림을 만들려면 x 및/또는 y가 복제 된 모든 행을 제거하십시오. 이 작업은 함께 할 수있다 :

fit.A <- fit.A[!duplicated(fit.A$x), ] 

(그것이 가능 다른 데이터에서 당신은뿐만 아니라 중복 y를 필터링해야 할 것입니다).