[R-es] CURSOS R
Muchas gracias a todos por la informaci�n. Saludos Marcos [[alternative HTML version deleted]] ___ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
Re: [R-es] Añadir escala a un mapa
Muchas gracias! Me ha servido de gran ayuda el paquete 'ggsn'. Saludos, > To: r-help-es@r-project.org > From: f.rodriguez.s...@gmail.com > Date: Mon, 7 Sep 2015 11:29:26 +0200 > Subject: Re: [R-es] Añadir escala a un mapa > > Hola Marcos, > > échale un vistazo al paquete ggsn: > https://cran.rstudio.com/web/packages/ggsn/ & > http://oswaldosantos.github.io/ggsn/ > > Saludos > > Paco > > El 04/09/2015 a las 18:51, Marcos Bermejo escribió: > > Hola a tod@s, > > > > Este es el c�digo principal que utilizo para dise�ar mi zona de estudio > > (cuenca): > > > > png("mapa_zona_estudio.png", units="in", width=9, height=8.5, res=300) > > > > # Vamos a pintar los distintos instrumentos de medida sobre el mapa (junto > > con �ste) y a�adimos leyenda > > ggmap(mapa, extend='device', legend="left", base_layer=ggplot(datos, > > aes(x=lon, y=lat))) + > >geom_point(data=datos, aes(shape = INSTRUMENTACI�N, > > color=INSTRUMENTACI�N, fill=INSTRUMENTACI�N), size=7.5) + > >geom_text(data=coord.geog[1:7,], aes(x=coord.geog$lon[1:7], > > y=coord.geog$lat[1:7], label=nombres.pluvio, hjust=0.2, vjust=1), size=5.2) > > + > >scale_shape_manual(values=c(21,24,22,23)) + > >geom_polygon(aes(x=long, y=lat, group=group), data=area.fort, > > colour="black", fill="brown", alpha=0.15, size=0.5, linetype=5) > > > > dev.off() > > > > > > Mi duda es: > > > > �C�mo puedo a�adir una escala en km a esa imagen (mapa)? > > > > Gracias de antemano, > > > > Saludos, > > > > Marcos > > > > [[alternative HTML version deleted]] > > > > > > > > ___ > > R-help-es mailing list > > R-help-es@r-project.org > > https://stat.ethz.ch/mailman/listinfo/r-help-es > > -- > Dr Francisco Rodriguez-Sanchez > Integrative Ecology Group > Estacion Biologica de Doñana - CSIC > Avda. Americo Vespucio s/n > 41092 Sevilla (Spain) > http://bit.ly/frod_san > > > [[alternative HTML version deleted]] > > ___ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es [[alternative HTML version deleted]] ___ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
[R-es] Añadir escala a un mapa
Hola a tod@s, Este es el c�digo principal que utilizo para dise�ar mi zona de estudio (cuenca): png("mapa_zona_estudio.png", units="in", width=9, height=8.5, res=300) # Vamos a pintar los distintos instrumentos de medida sobre el mapa (junto con �ste) y a�adimos leyenda ggmap(mapa, extend='device', legend="left", base_layer=ggplot(datos, aes(x=lon, y=lat))) + geom_point(data=datos, aes(shape = INSTRUMENTACI�N, color=INSTRUMENTACI�N, fill=INSTRUMENTACI�N), size=7.5) + geom_text(data=coord.geog[1:7,], aes(x=coord.geog$lon[1:7], y=coord.geog$lat[1:7], label=nombres.pluvio, hjust=0.2, vjust=1), size=5.2) + scale_shape_manual(values=c(21,24,22,23)) + geom_polygon(aes(x=long, y=lat, group=group), data=area.fort, colour="black", fill="brown", alpha=0.15, size=0.5, linetype=5) dev.off() Mi duda es: �C�mo puedo a�adir una escala en km a esa imagen (mapa)? Gracias de antemano, Saludos, Marcos [[alternative HTML version deleted]] ___ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
Re: [R-es] Duda ' proj4string'
Muchas gracias, ya no me da el error, lo que pasa que no me cerca el área de la cuenca, no me hace nada la función geom_polygon(). Os paso los dos ficheros que se necesitan más el script, para ver si podéis probar y ver qué pasa. Un saludo, From: oscar.perpi...@upm.es To: public-markbermejo90-pkbjnfxxiarbdgjk7y7...@plane.gmane.org CC: public-r-help-es-0bnbq1pawb4bxfe83j6...@plane.gmane.org Subject: Re: Duda ' proj4string' Date: Mon, 10 Aug 2015 07:02:02 +0200 Hola, Intuyo que el error se produce porque area no tiene definido el proj4string. Creo que lo resolverás cambiando el orden de estas líneas así: proj4string(area) - +proj=utm +zone=30 +north +ellps=WGS84 +datum=WGS84 +units=m +no_defs area - spTransform(area, CRS(+proj=longlat +datum=WGS84)) También puedes probar a leer el fichero shp con readOGR (paquete rgdal) en lugar de con readShapePoly. Saludos. Oscar. -- Oscar Perpiñán Lamigueiro Dpto. Ing. Eléctrica, Electrónica, Automática y Física Aplicada Escuela Técnica Superior de Ingeniería y Diseño Industrial URL: http://oscarperpinan.github.io area_cuenca.R Description: Binary data IDENTIFICA PARAJE COTA_METRO POINT_X POINT_Y Pluvi¾metro 1 Arromoro1831.000362151.000 4470922.000 Pluvi¾metro 2 Atalaya 1790.000361075.000 4470230.000 Pluvi¾metro 3 Dehesa 746.000 358566.000 4475056.000 Pluvi¾metro 4 Gasolinera 736.000 358875.000 4475400.000 Pluvi¾metro 5 Morales 1287.000361922.000 4473439.000 Pluvi¾metro 6 Pena Parda 1420.000360098.000 4470743.000 Pluvi¾metro 7 Trampalones 920.000 360004.000 4472896.000 venero_Project.shp Description: Binary data ___ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
[R-es] Duda ' proj4string'
Hola, mi trozo de c�digo es: # Primero creamos el mapa de toda la instrumentaci�n rm(list=ls()) # remove all the variables from the workspace setwd(C:/Users/Marcos/Documents/TFM/Situacion_pluviometros/) library(ggmap) library(rgdal) library(ggplot2) library(scales) library(maptools) # Convertimos coordenadas de UTM a geogr�ficas: # Leemos el archivo de texto donde est�n las coordenadas UTM de los Pluvi�metros coord - read.delim(C:/Users/Marcos/Documents/TFM/Situacion_pluviometros/pluviometrosVenero.txt, header=TRUE)[,4:5] # A�adimos coordenadas del TDR, los dos limn�metros y el radar meteorol�gico (figura 3.1 TFM_Carlos) coord.todo - rbind(coord,c(356489,4474915), c(360744,4470212), c(360040,4471782), c(359088,4474084)) rownames(coord.todo)=make.names(c(rep(Pluvi�metros,7), Radar, TDR, rep(Limn�metros,2)), unique=TRUE) coord.todo.spdf - coord.todo # .spdf: Class for spatial attributes that have spatial point locations colnames(coord.todo.spdf) - c(x,y) coordinates(coord.todo.spdf) - ~x+y # To retrieve the CRS for a spatial object: proj4string(x) proj4string(coord.todo.spdf) - CRS(+proj=utm +zone=30 ellps=WGS84) # Ahora pasamos de un CRS a otro (pasamos de coordenadas UTM a geogr�ficas) coord.geog - as.data.frame(spTransform(coord.todo.spdf, CRS(+proj=longlat +datum=WGS84))) colnames(coord.geog) - c(lon, lat) # Creamos un data.frame llamado datos para poder pintar bien la leyenda del mapa datos - coord.todo datos$lon - coord.geog$lon datos$lat - coord.geog$lat datos$INSTRUMENTACI�N - c(Pluvi�metro,Pluvi�metro,Pluvi�metro,Pluvi�metro,Pluvi�metro,Pluvi�metro,Pluvi�metro, Radar meteorol�gico,TDR,Limn�metro,Limn�metro) # Ahora con la funci�n get_map consultamos en Google Maps el mapa # que queremos crear de nuestra zona de estudio mapa - get_map(location=c(lon=-4.66, lat=40.39), zoom=13, maptype=terrain, source=google) nombres.pluvio - c(Arromoro, Atalaya, Dehesa, Gasolinera, Collado Morales, Pe�a Parda, Trampalones) # Cercamos el �rea de la cuenca area - readShapePoly(venero_Project.shp) # Lee el shape con el area de la cuenca proj4string(area) # Describes data's current coordinate reference system # To change to correct projection: area - spTransform(area, CRS(+proj=longlat +datum=WGS84)) proj4string(area) - +proj=utm +zone=30 +north +ellps=WGS84 +datum=WGS84 +units=m +no_defs png(mapa_zona_estudio.png, units=in, width=9, height=8.5, res=300) # Vamos a pintar los distintos instrumentos de medida sobre el mapa (junto con �ste) y a�adimos leyenda ggmap(mapa, extend='device', legend=left, base_layer=ggplot(datos, aes(x=lon, y=lat))) + geom_point(data=datos, aes(shape = INSTRUMENTACI�N, color=INSTRUMENTACI�N, fill=INSTRUMENTACI�N), size=7.5) + geom_text(data=coord.geog[1:7,], aes(x=coord.geog$lon[1:7], y=coord.geog$lat[1:7], label=nombres.pluvio, hjust=0.2, vjust=1), size=5.2) + scale_shape_manual(values=c(21,24,22,23)) geom_polygon(aes(x=long, y=lat, group=id), data=area, color=white, alpha=.4, size=.2) dev.off() El error que me da la consola de R es: Error in spTransform(xSP, CRSobj, ...) : No transformation possible from NA reference system �Alguien me puede decir lo que hay que hacer para que ya no me de este error? Muchas gracias de antemano. Un saludo, Marcos [[alternative HTML version deleted]] ___ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
Re: [R-es] Duda interpolación (package ' gstat ')
Muchas gracias por todo. Esta es la parte del código del variograma: vg.aux - variogram(radPcp~1, radar.spdf, cutoff=1) vg - as.data.frame(matrix(c(vg.aux$dist, vg.aux$gamma), nrow=15, ncol=2)) # El primer argumento de fit.variogram() es lo que hemos obtenido de variogram(). v.fit - fit.variogram(vg.aux, model=vgm(psill=0.10, model='Gau', range=5000, nugget=0.05)) He probado con otros modelos: 'Exp', 'Mat' y 'Sph', y me sigue dando el mismo error que os mandé. Os pongo la función krige() otra vez: KED.rad - krige( formula=pluvPcp~layer, # covariable - radar locations=lluvia.rad.pluv.spdf, newdata=radarGrid, # podría ser cualquier objeto Spatial model=v.fit,# modelo de semivariograma. maxdist=Inf ) La cosa es que tengo datos de lluvia de 5 pluviómetros (variable 'pluvPcp') situados en 5 puntos diferentes de una cuenca, y quiero interpolarpolarlos para que me estime la lluvia en toda la cuenca usando como covariable los datos de un radar meteorológico en esos mismos 5 puntos de los pluviómetros (variable 'layer'). El variograma lo obtengo a partir de los datos del radar en toda la cuenca (variable 'radPcp' - unos 13.000 puntos), ya que no puedo obtenerlo a partir de los datos de lluvia de los pluviómetros, porque con 5 puntos no puedo obtener un variograma fiable. ¿El error que me daba R, puede ser por esto? ¿Cómo lo veis? Lo de la solución no paramétrica no lo entiendo muy bien y no sé si podré implementarlo en mi caso. Un saludo, To: r-help-es@r-project.org From: rubenfca...@gmail.com Date: Fri, 7 Aug 2015 01:07:09 +0200 Subject: Re: [R-es] Duda interpolación (package ' gstat ') Hola de nuevo, Un par de detalles técnicos... Antes de nada comentar que el paquete gstat no es computacionalmente muy eficiente calculando las predicciones kriging (calcula el estimador mcg de la tendencia utilizando la expresión explícita, etc...), entre otras cosas requiere la factorización de la matriz de varianzas covarianzas y pueden aparecer problemas numéricos. Es bien conocido que con el modelo gaussiano de variograma pueden aparecer estas inestabilidades (puede ser muy plano en saltos pequeños y como consecuencia la matriz de covarianzas es semidefinida positiva pero no 'estrictamente' definida positiva - en esto influye el redondeo...). Mi recomendación sería que probases con otro modelo de variograma y que compartas el gráfico del ajuste... Un saludo, Rubén. P.D. Cuidado también con el sesgo en la estimación del variograma a partir de los residuos (e.g. Fernandez-Casal R. and Francisco-Fernandez M. (2014) Nonparametric bias-corrected variogram estimation under non-constant trend, Stoch. Environ. Res. Ris. Assess, 28, 1247-1259), aunque si tu objetivo final es la predicción no te preocupes demasiado (no deberías fiarte de las varianzas kriging)... El 06/08/2015 a las 17:40, Freddy Omar López Quintero escribió: Hola Marcos, ¿El problema persiste si pruebas con un subconjunto de los datos? Saludos. 2015-08-06 12:34 GMT-03:00 Marcos Bermejo markbermej...@hotmail.com: Sale plano sí. Ya se que sin tener los datos y el código es un poco difícil, pero es que mis datos ocupan mucho, es imposible. Seguiré mirando por internet. Muchas gracias Rubén. Un saludo, To: r-help-es@r-project.org From: rubenfca...@gmail.com Date: Thu, 6 Aug 2015 14:21:47 +0200 Subject: Re: [R-es] Duda interpolación (package ' gstat ') Hola Marcos, Parece que el problema es con el ajuste del variograma (sale plano?), sin más información no se exactamente que puede estar pasando... Si me envías el código completo y los datos lo miro con más detalle (e incluso te doy una alternativa no paramétrica con el paquete npsp). Un saludo, Rubén. El 04/08/2015 a las 11:24, Marcos Bermejo escribió: Hola, # Hacemos el KED. Ver funci�n krige(): KED.rad - krige( formula=pluvPcp~layer, # covariable - radar locations=lluvia.rad.pluv.spdf, newdata=radarGrid, # podr�a ser cualquier objeto Spatial model=v.fit,# modelo de semivariograma. maxdist=Inf ) Esta es la funci�n que me interpola los datos de lluvia. El error que me da es: solve.c, line 88: singular matrix in function Usolve() lufactor.c, line 208: singular matrix in function m_inverse() Error in predict.gstat(g, newdata = newdata, block = block, nsim = nsim, : m_inverse In addition: Warning message: In fit.variogram(vg.aux, model = vgm(psill = 0.1, model = Gau, : Warning: singular model in variogram fit Mi funci�n del variograma
Re: [R-es] Duda interpolación (package ' gstat ')
Sale plano sí. Ya se que sin tener los datos y el código es un poco difícil, pero es que mis datos ocupan mucho, es imposible. Seguiré mirando por internet. Muchas gracias Rubén. Un saludo, To: r-help-es@r-project.org From: rubenfca...@gmail.com Date: Thu, 6 Aug 2015 14:21:47 +0200 Subject: Re: [R-es] Duda interpolación (package ' gstat ') Hola Marcos, Parece que el problema es con el ajuste del variograma (sale plano?), sin más información no se exactamente que puede estar pasando... Si me envías el código completo y los datos lo miro con más detalle (e incluso te doy una alternativa no paramétrica con el paquete npsp). Un saludo, Rubén. El 04/08/2015 a las 11:24, Marcos Bermejo escribió: Hola, # Hacemos el KED. Ver funci�n krige(): KED.rad - krige( formula=pluvPcp~layer, # covariable - radar locations=lluvia.rad.pluv.spdf, newdata=radarGrid, # podr�a ser cualquier objeto Spatial model=v.fit,# modelo de semivariograma. maxdist=Inf ) Esta es la funci�n que me interpola los datos de lluvia. El error que me da es: solve.c, line 88: singular matrix in function Usolve() lufactor.c, line 208: singular matrix in function m_inverse() Error in predict.gstat(g, newdata = newdata, block = block, nsim = nsim, : m_inverse In addition: Warning message: In fit.variogram(vg.aux, model = vgm(psill = 0.1, model = Gau, : Warning: singular model in variogram fit Mi funci�n del variograma es : v.fit - fit.variogram(vg.aux, model=vgm(psill=0.15, model='Gau', range=5000, nugget=0.05)) �Alguien me podr�a ayudar? Gracias de antemano. Un saludo, [[alternative HTML version deleted]] ___ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es [[alternative HTML version deleted]] ___ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es [[alternative HTML version deleted]] ___ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
[R-es] Duda interpolación (package ' gstat ')
Hola, # Hacemos el KED. Ver funci�n krige(): KED.rad - krige( formula=pluvPcp~layer, # covariable - radar locations=lluvia.rad.pluv.spdf, newdata=radarGrid, # podr�a ser cualquier objeto Spatial model=v.fit,# modelo de semivariograma. maxdist=Inf ) Esta es la funci�n que me interpola los datos de lluvia. El error que me da es: solve.c, line 88: singular matrix in function Usolve() lufactor.c, line 208: singular matrix in function m_inverse() Error in predict.gstat(g, newdata = newdata, block = block, nsim = nsim, : m_inverse In addition: Warning message: In fit.variogram(vg.aux, model = vgm(psill = 0.1, model = Gau, : Warning: singular model in variogram fit Mi funci�n del variograma es : v.fit - fit.variogram(vg.aux, model=vgm(psill=0.15, model='Gau', range=5000, nugget=0.05)) �Alguien me podr�a ayudar? Gracias de antemano. Un saludo, [[alternative HTML version deleted]] ___ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
[R-es] Duda ' raster package '
Hola, Tengo una matriz ' elev.rad.mx ' que tiene tres columnas: 1� columna: coordenada x del punto geogr�fico. 2� columna: coordenada y del punto geogr�fico. 3� columna: valores de un radar en el punto geogr�fico (x,y). Quiero convertir esta matriz a un objeto raster. Para ello, pongo la siguiente instrucci�n: elev.rad.raster - raster(elev.rad.mx, xmn=355349, xmx=366549, ymn=4468331, ymx=4476651) Lo que me sale por consola al poner ' elev.rad.raster ' es: elev.rad.raster class : RasterLayer dimensions : 13306, 3, 39918 (nrow, ncol, ncell) resolution : 3733.333, 0.6252818 (x, y) extent : 355349, 366549, 4468331, 4476651 (xmin, xmax, ymin, ymax) coord. ref. : NA data source : in memory names :layer values : 723.13, 4476611 (min, max) Entonces, mi duda es: �C�mo puedo convertir o transformar este raster a otro raster (con los mismos datos y la misma extensi�n que tiene ' elev.rad.raster ') para que tenga de dimensiones 140 140 y de resoluci�n (x,y)=(80,80)? Lo necesito porque tengo otro raster de ese tipo y quiero juntar los dos en un Grid. Para que todo encaje, tienen que tener la misma resoluci�n. Muchas gracias de antemano. Un saludo, [[alternative HTML version deleted]] ___ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es
[R-es] Duda R
Hola, Estoy intentando hacer un kriging con deriva externa con la funci�n krige(), pero me da un error: Error in eval(expr, envir, enclos) : object 'radPcp' not found El c�digo principal es: radar.mx - rasterToPoints(radar.cu) colnames(radar.mx) - c(x,y,radPcp) radar.spdf - as.data.frame(radar.mx) lluvia.pluv - as.data.frame(t(rbind(pluvio.h[1,log.NA], coord.aux[,log.NA]))) colnames(lluvia.pluv) - c(pluvPcp, x, y) lluvia.pluv.spdf - lluvia.pluv coordinates(lluvia.pluv.spdf) - ~x+y #radarpx - as(radar.spdf, SpatialPixelsDataFrame) plantilla.sp - as.data.frame(radar.mx)[,1:2] coordinates(plantilla.sp) - ~x+y class(plantilla.sp) for (v in 1:length(pluvio.h[1,log.NA])) { lluvia.pluv.df - data.frame(lluvia.pluv.spdf) [-v,] lluvia.pluv.spdf - lluvia.pluv.df coordinates(lluvia.pluv.spdf) - ~x+y # Hacemos el KED. Ver funci�n krige(): KED.rad - krige( formula=pluvPcp~radPcp, # covariable - radar locations=lluvia.pluv.spdf, newdata=plantilla.sp, # podr�a ser cualquier objeto Spatial model=v.fit, # modelo de semivariograma. maxdist=5000 ) �Me podr�ais ayudar? Un saludo, [[alternative HTML version deleted]] ___ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es