
abaixo... --- Fernando Mayer Universidade Federal de Santa Catarina - UFSC Departamento de Ecologia e Zoologia - ECZ/CCB URL: http://sites.google.com/site/fernandomayer e-mail: fernandomayer [@] gmail.com 2012/3/16 Thiago Veloso <thi_veloso@yahoo.com.br>
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: sp raster 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
No objeto meltR não existe nenhum X3 como componente, por isso não há como criá-lo. Qual era o objetivo aqui?
--------------------------------------------
O código continuaria assim:
-------------------------------------------- #Plot data p = 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.
_______________________________________________ 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.