[R-br] Ajuda parar exibir variação temporal de dados em mapas
Thiago Veloso
thi_veloso em yahoo.com.br
Sexta Março 16 21:14:09 BRT 2012
Pessoal,
Possuo três mapas (em formato raster) de desmatamento na Amazônia em diferentes anos. Essas taxas de desmatamento variam de 0 a 1. A minha intenção é mostrar a variação temporal do desmatamento através de histogramas que mostram a contagem de células em diferentes classes (p. ex., de 0 a 0.3, de 0.3 a 0.6 e de 0.6 a 1) em cada ano. Aqui está uma ideia conceitual do que preciso fazer (apenas ilustrativa, criada com dados hipotéticos): http://img24.imageshack.us/img24/6416/examplezxt.png e aqui disponibilizo um arquivo com amostra do arquivo de dados http://db.tt/XXDtRee1. Trata-se um netcdf com três níveis de tempo.
Na lista de SIG do R eu já recebi algumas dicas para fazer isso. Entretanto, estou recebendo um erro ao tentar criar fatores nos dados. Será que alguém aqui consegue me dar uma auxílio? Segue o código que estou utilizando e a mensagem de erro:
--------------------------------------------> #Load required packages> library (raster)Loading required package: spraster version 1.9-70 (27-February-2012)> library (ggplot2)> library (reshape2)> > #Load data> deforest <- brick("/home/thiago/Dropbox/defor-3-years.nc")Loading required package: ncdf> > #Probe layer names and plot raster data> layerNames(deforest)[1] "X0.1" "X0.2" "X0.3"> plot(deforest)> > #Convert spatial object to data frame (omitting NAs)> meltR <- melt(as.array(deforest),na.rm=TRUE)> > #Define classes used to count grids> meltR$class <- cut(meltR$value, c(0,0.3,0.6,1))> #Define factors to plot individual years> meltR$X3 <- factor(meltR$X3, labels=c('2000','2001','2002'))Error in factor(meltR$X3, labels = c("2000", "2001", "2002")) : invalid labels; length 3 should be 1 or 0--------------------------------------------
O código continuaria assim:
--------------------------------------------#Plot datap = ggplot(meltR,aes(x=class))p + geom_histogram(aes(fill=class))+facet_grid(. ~ X3)--------------------------------------------
Caso seja útil, segue o sumário do sessionInfo():
--------------------------------------------> sessionInfo()R version 2.14.1 (2011-12-22)Platform: x86_64-pc-linux-gnu (64-bit)
locale: [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C [3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8 [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8 [7] LC_PAPER=C LC_NAME=C [9] LC_ADDRESS=C LC_TELEPHONE=C [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:[1] stats graphics grDevices utils datasets methods base
other attached packages:[1] ncdf_1.6.6 reshape2_1.2.1 ggplot2_0.9.0 raster_1.9-70 sp_0.9-97
loaded via a namespace (and not attached): [1] colorspace_1.1-1 dichromat_1.2-4 digest_0.5.2 grid_2.14.1 [5] lattice_0.20-6 MASS_7.3-17 memoise_0.1 munsell_0.3 [9] plyr_1.7.1 proto_0.3-9.2 RColorBrewer_1.0-5 scales_0.2.0 [13] stringr_0.6 --------------------------------------------
Um verdadeiro desafio - estou desde 4a feira quebrando a cabeça com isso. Agradeço desde já qualquer contribuição! Thiago.
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20120316/f009d950/attachment.html>
Mais detalhes sobre a lista de discussão R-br