Identificar células em um raster

Boa tarde pessoal... Preciso saber dentro de qual célula uma determinada coordenada se encontra, tentei várias soluções 'tabajara' mas nenhuma deu certo. ### Vamos então ao exemplo: r <- raster() values(r) <- sort(rnorm(64800)) plot(r) ### aqui eu gostaria de saber qual é a célula que uma determinada coordenada se encontra. ### mas como? ### se alguém puder me dar uma ajuda ficarei grato. ### Por exemplo, qual seria a celula que as coordenadas 'xy' (abaixo) se encontram? xy <- c(-179.6,89.6) Abraços, Luciano F. Sgarbi -- *Luciano F. Sgarbi * * Currículo Lattes <http://lattes.cnpq.br/9788198135883354> **Dep. Ecologia, Instituto de Ciências Biológicas I* *Universidade Federal de Goiás, campus II, Goiânia-GO, Brasil*

cellFromXY deve funcionar, veja abaixo
cellFromXY(r,xy) [1] 1 Saudações, -- Thiago V. dos Santos PhD student Land and Atmospheric Science University of Minnesota http://www.laas.umn.edu/CurrentStudents/MeettheStudents/ThiagodosSantos/inde... Phone: (612) 323 9898
On Thursday, January 16, 2014 11:11 AM, Luciano F. Sgarbi <luciano.f.sgarbi@gmail.com> wrote: Boa tarde pessoal... Preciso saber dentro de qual célula uma determinada coordenada se encontra, tentei várias soluções 'tabajara' mas nenhuma deu certo. ### Vamos então ao exemplo: r <- raster() values(r) <- sort(rnorm(64800)) plot(r) ### aqui eu gostaria de saber qual é a célula que uma determinada coordenada se encontra. ### mas como? ### se alguém puder me dar uma ajuda ficarei grato. ### Por exemplo, qual seria a celula que as coordenadas 'xy' (abaixo) se encontram? xy <- c(-179.6,89.6) Abraços, Luciano F. Sgarbi -- Luciano F. Sgarbi Currículo Lattes Dep. Ecologia, Instituto de Ciências Biológicas I Universidade Federal de Goiás, campus II, Goiânia-GO, Brasil _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

Muito obrigado Thiago. Era exatamente isso. Abraço Em 16 de janeiro de 2014 16:52, Thiago V. dos Santos < thi_veloso@yahoo.com.br> escreveu:
cellFromXY deve funcionar, veja abaixo
cellFromXY(r,xy) [1] 1
Saudações, -- Thiago V. dos Santos PhD student Land and Atmospheric Science University of Minnesota
http://www.laas.umn.edu/CurrentStudents/MeettheStudents/ThiagodosSantos/inde... Phone: (612) 323 9898
On Thursday, January 16, 2014 11:11 AM, Luciano F. Sgarbi < luciano.f.sgarbi@gmail.com> wrote: Boa tarde pessoal...
Preciso saber dentro de qual célula uma determinada coordenada se encontra, tentei várias soluções 'tabajara' mas nenhuma deu certo.
### Vamos então ao exemplo: r <- raster() values(r) <- sort(rnorm(64800)) plot(r) ### aqui eu gostaria de saber qual é a célula que uma determinada coordenada se encontra. ### mas como? ### se alguém puder me dar uma ajuda ficarei grato. ### Por exemplo, qual seria a celula que as coordenadas 'xy' (abaixo) se encontram? xy <- c(-179.6,89.6)
Abraços, Luciano F. Sgarbi
--
*Luciano F. Sgarbi *
* Currículo Lattes <http://lattes.cnpq.br/9788198135883354> **Dep. Ecologia, Instituto de Ciências Biológicas I* *Universidade Federal de Goiás, campus II, Goiânia-GO, Brasil*
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- *Luciano F. Sgarbi * * Currículo Lattes <http://lattes.cnpq.br/9788198135883354> **Dep. Ecologia, Instituto de Ciências Biológicas I* *Universidade Federal de Goiás, campus II, Goiânia-GO, Brasil*

Thiago, No meu caso eu extrai qual é o pixel pela função cellFromXY() , como o exemplo do Luciano, mas alem do número do pixel gostaria que fosse retornada as coordenadas do pixel, teria alguma sugestão, segue CRM, require(raster) require(sp) ## Criando um raster r <- raster(nc=10, nr=10) r <- setValues(r, round(runif(ncell(r))* 255)) ##Pontos selecionados x<-c(44.25,33.06,63.22,71.35) y<-c(22.00,81.90,15.18,71.03) pontos <- SpatialPoints(cbind(x,y))#cbind-junta duas colunas em uma, no caso as coordenadas cellFromXY(r,pontos) plot(r) points(pontos, col="red") Obrigado, Alexandre Em 16/01/2014 16:00, Luciano F. Sgarbi escreveu:
Muito obrigado Thiago. Era exatamente isso. Abraço
Em 16 de janeiro de 2014 16:52, Thiago V. dos Santos <thi_veloso@yahoo.com.br <mailto:thi_veloso@yahoo.com.br>> escreveu:
cellFromXY deve funcionar, veja abaixo
> cellFromXY(r,xy) [1] 1 Saudações, -- Thiago V. dos Santos PhD student Land and Atmospheric Science University of Minnesota http://www.laas.umn.edu/CurrentStudents/MeettheStudents/ThiagodosSantos/inde... Phone: (612) 323 9898 <tel:%28612%29%20323%209898>
On Thursday, January 16, 2014 11:11 AM, Luciano F. Sgarbi <luciano.f.sgarbi@gmail.com <mailto:luciano.f.sgarbi@gmail.com>> wrote: Boa tarde pessoal...
Preciso saber dentro de qual célula uma determinada coordenada se encontra, tentei várias soluções 'tabajara' mas nenhuma deu certo.
### Vamos então ao exemplo: r <- raster() values(r) <- sort(rnorm(64800)) plot(r) ### aqui eu gostaria de saber qual é a célula que uma determinada coordenada se encontra. ### mas como? ### se alguém puder me dar uma ajuda ficarei grato. ### Por exemplo, qual seria a celula que as coordenadas 'xy' (abaixo) se encontram? xy <- c(-179.6,89.6)
Abraços, Luciano F. Sgarbi
-- /Luciano F. Sgarbi / /Currículo Lattes <http://lattes.cnpq.br/9788198135883354> //Dep. Ecologia, Instituto de Ciências Biológicas I// / /Universidade Federal de Goiás, campus II, Goiânia-GO, Brasil/
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br <mailto:R-br@listas.c3sl.ufpr.br> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br <mailto:R-br@listas.c3sl.ufpr.br> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- /Luciano F. Sgarbi / /Currículo Lattes <http://lattes.cnpq.br/9788198135883354> //Dep. Ecologia, Instituto de Ciências Biológicas I// / /Universidade Federal de Goiás, campus II, Goiânia-GO, Brasil/
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- ====================================================================== Alexandre dos Santos Proteção Florestal IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso Campus Cáceres Caixa Postal 244 Avenida dos Ramires, s/n Bairro: Distrito Industrial Cáceres - MT CEP: 78.200-000 Fone: (+55) 65 8132-8112 (TIM) (+55) 65 9686-6970 (VIVO) e-mails:alexandresantosbr@yahoo.com.br alexandre.santos@cas.ifmt.edu.br Lattes: http://lattes.cnpq.br/1360403201088680 ======================================================================

Alexandre, Pelo que entendi você quer a coordenada do centro do pixel/célula identificado. Se for isso mesmo posso sugerir duas opções, conforme código abaixo: ### <code r> require(raster); require(sp) ## Criando um raster r <- raster(nc=10, nr=10) r <- setValues(r, round(runif(ncell(r))* 255)) ##Pontos selecionados x <- c(44.25,33.06,63.22,71.35) y <- c(22.00,81.90,15.18,71.03) pontos <- SpatialPoints(cbind(x,y)) cells <- cellFromXY(r, pontos); cells coordinates(r)[cells,] ## alternativa 1 p.cen <- xyFromCell(r, cells); p.cen ## alternativa2 plot(r) points(pontos, col="red") points(p.cen) ### </code> Éder Comunello <c <comunello.eder@gmail.com>omunello.eder@gmail.com> Dourados, MS - [22 16.5'S, 54 49'W]

Obrigado Éder, Queria também extrair o valor dos pixels e adicionei a rotina, vou deixar o scrip para depósito na lista, ### <code r> require(raster); require(sp) ## Criando um raster r <- raster(nc=10, nr=10) r <- setValues(r, round(runif(ncell(r))* 255)) ##Pontos selecionados x <- c(44.25,33.06,63.22,71.35) y <- c(22.00,81.90,15.18,71.03) pontos <- SpatialPoints(cbind(x,y)) cells <- cellFromXY(r, pontos); cells coordinates(r)[cells,] ## alternativa 1 p.cen <- xyFromCell(r, cells); p.cen ## alternativa2 plot(r) points(pontos, col="red") points(p.cen) values <- extract(r,p.cen) ##Extrai as coordendas dados<-cbind(p.cen,cells,values) dados ### </code> -- ====================================================================== Alexandre dos Santos Proteção Florestal IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso Campus Cáceres Caixa Postal 244 Avenida dos Ramires, s/n Bairro: Distrito Industrial Cáceres - MT CEP: 78.200-000 Fone: (+55) 65 8132-8112 (TIM) (+55) 65 9686-6970 (VIVO) e-mails:alexandresantosbr@yahoo.com.br alexandre.santos@cas.ifmt.edu.br Lattes: http://lattes.cnpq.br/1360403201088680 ====================================================================== Em 16/01/2014 21:45, Éder Comunello escreveu:
Alexandre,
Pelo que entendi você quer a coordenada do centro do pixel/célula identificado. Se for isso mesmo posso sugerir duas opções, conforme código abaixo:
### <code r> require(raster); require(sp)
## Criando um raster r <- raster(nc=10, nr=10) r <- setValues(r, round(runif(ncell(r))* 255))
##Pontos selecionados x <- c(44.25,33.06,63.22,71.35) y <- c(22.00,81.90,15.18,71.03) pontos <- SpatialPoints(cbind(x,y))
cells <- cellFromXY(r, pontos); cells coordinates(r)[cells,] ## alternativa 1 p.cen <- xyFromCell(r, cells); p.cen ## alternativa2
plot(r) points(pontos, col="red") points(p.cen) ### </code>
Éder Comunello <c <mailto:comunello.eder@gmail.com>omunello.eder@gmail.com <mailto:omunello.eder@gmail.com>> Dourados, MS - [22 16.5'S, 54 49'W]
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
participantes (4)
-
ASANTOS
-
Luciano F. Sgarbi
-
Thiago V. dos Santos
-
Éder Comunello