Rで対数軸の等高線。
matmat<-function(x,y,z,kugirix=27,kugiriy=27,add=F, plot=T,col=col2){ dimx<-exp(seq(min(log(x)),max(log(x)),length.out=kugirix)) dimy<-exp(seq(min(log(y)),max(log(y)),length.out=kugiriy)) mat1<-matrix(nrow=(kugirix-1),ncol=(kugiriy-1)) mat2<-matrix(nrow=(kugirix-1),ncol=(kugiriy-1)) mat3<-matrix(nrow=(kugirix-1),ncol=(kugiriy-1)) for(i in 1:(length(dimx)-1)){ for(j in 1:(length(dimy)-1)){ mat1[i,j]<-0 mat2[i,j]<-0 d123<-z[x>=dimx[i] & x<dimx[i+1] & y>=dimy[j] & y<dimy[j+1]] mat1[i,j]<-median(log(d123[d123!=0])) mat2[i,j]<-(log(length(d123[d123!=0]))) mat3[i,j]<-(log(mean(d123[d123!=0]))) } } if(plot==T){ contour(x=dimx[1:(length(dimx)-1)], y=dimy[1:(length(dimy)-1)],z=mat1,add=add,log="xy") #contour(x=dimx[1:(length(dimx)-1)], y=dimy[1:(length(dimy)-1],z=matmat1,log="xy") } list(mat1,mat2,mat3) }