<div dir="ltr">Hola, ¿qué tal?<div><br></div><div>Tienes que hacer algo así como</div><div><br></div><div>ggmap(mapa) + stat_density2d([...])</div><div><br></div><div>Tienes ejemplos completos en el artículo de Wickham</div><div><br></div><div><a href="https://journal.r-project.org/archive/2013-1/kahle-wickham.pdf">https://journal.r-project.org/archive/2013-1/kahle-wickham.pdf</a><br></div><div><br></div><div>Un saludo,</div><div><br></div><div>Carlos J. Gil Bellosta</div><div><a href="http://www.datanalytics.com">http://www.datanalytics.com</a></div></div><div class="gmail_extra"><br><div class="gmail_quote">El 20 de octubre de 2015, 17:39, Gilsanz, Jose Luis <span dir="ltr"><<a href="mailto:jluis.gilsanz@eu.jll.com" target="_blank">jluis.gilsanz@eu.jll.com</a>></span> escribió:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div lang="ES" link="blue" vlink="purple">
<p>
</p><div>
<p>Hola:<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>Estoy intentando generar un mapa de calor que muestre, dadas unas coordenadas geográficas determinadas, el “calor” (cuanto mas alto el valor de esta variable mas rojo y cuanto mas bajo mas azul) de una determinada variable.<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>Es decir con unos datos como estos:<u></u><u></u></p>
<p>x y z<u></u><u></u></p>
<p>-3,716575 40,41743 3.169<u></u><u></u></p>
<p>-3,710735 40,42179 4.134<u></u><u></u></p>
<p>-3,704625 40,40333 2.606<u></u><u></u></p>
<p>-3,703929 40,40363 2.563<u></u><u></u></p>
<p>-3,686431 40,36133 1.452<u></u><u></u></p>
<p>-3,682371 40,35542 1.523<u></u><u></u></p>
<p>-3,675325 40,41986 4.122<u></u><u></u></p>
<p>-3,673758 40,41978 4.098<u></u><u></u></p>
<p>-3,645127 40,42780 2.306<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>Donde el data frame datos contiene:<u></u><u></u></p>
<p>x: Longitud<u></u><u></u></p>
<p>y: Latitud<u></u><u></u></p>
<p>z: Variable a estudiar<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>lo que quiero es mostrar sobre un fondo de GoogleMaps, otra capa(semitransparente) con el Calor de la variable.<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>Para ello primero calculo una aproximación de superficies de mis puntos usando MBA<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>##Cargamos paquetes<u></u><u></u></p>
<p>library(MBA)<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>##Calculamos aproximacion de superficies segun coordenadas y valores<u></u><u></u></p>
<p>superf <- mba.surf(datos, 2000, 2000,extend=FALSE)$xyz.est<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>##Obtenemos la capa con los colores a partir de la aproximación de superficies<u></u><u></u></p>
<p><span lang="EN-US">image.plot(superf, bg= NULL, nlevel = param$NIVELES)<u></u><u></u></span></p>
<p><span><img width="548" height="374" src="cid:image001.png@01D10B5D.6039CD80"></span><u></u><u></u></p>
<p><u></u> <u></u></p>
<p><u></u> <u></u></p>
<p>Por otro lado obtengo el mapa de google maps sobre el cual deberia ir esto asi:<u></u><u></u></p>
<p>#Cargamos paquete<u></u><u></u></p>
<p>library(ggmap)<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>##Centro del mapa<u></u><u></u></p>
<p>center <- c(mean(datos$x), mean(datos$y))<u></u><u></u></p>
<p><span lang="EN-US">##Zoom<u></u><u></u></span></p>
<p><span lang="EN-US">zoom <- min(MaxZoom(range(datos$x), range(datos$x)))<u></u><u></u></span></p>
<p><span lang="EN-US"><u></u> <u></u></span></p>
<p>##Obtenenmos mapa base<u></u><u></u></p>
<p><span lang="EN-US">mapa <- get_map(center, zoom = 12)<u></u><u></u></span></p>
<p><span><img width="548" height="374" src="cid:image002.png@01D10B5D.6039CD80"></span><span lang="EN-US"><u></u><u></u></span></p>
<p><span lang="EN-US"><u></u> <u></u></span></p>
<p>Lo que ya no consigo hacer es poner la imagen con los colores sobre el mapa de forma que este correctamente calibrada.<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>Seguro que todo esto se pude hacer de un tiron con ggmap y/o RgoogleMaps pero por mas que miro no veo la manera de meter el objeto superf “dentro” de un mapa.<u></u><u></u></p>
<p><u></u> <u></u></p>
<p>Muchas Gracias<u></u><u></u></p>
<p><u></u> <u></u></p>
<p><u></u> <u></u></p>
</div>
<p></p>
<p><font face="Arial"><font color="#a5a5a5" size="1">TASACIONES HIPOTECARIAS
S.A.<br>Registration number: A-28/806222.<br>Registered Office: Pº de la
Castellana, 79 - 1ª ; 28046 Madrid</font></font></p>
<p><font color="#a5a5a5" size="1" face="Arial">This e-mail is for the use of the
intended recipient(s) only. If you have received this e-mail in error, please
notify the sender immediately and then delete it. If you are not the intended
recipient, you must not use, disclose or distribute this e-mail without the
author's prior permission. We have taken precautions to minimise the risk of
transmitting software viruses, but we advise you to carry out your own virus
checks on any attachment to this message. We cannot accept liability for any
loss or damage caused by software viruses. If you are the intended recipient and
you do not wish to receive similar electronic messages from us in future then
please respond to the sender to this effect</font></p></div>
<br>_______________________________________________<br>
R-help-es mailing list<br>
<a href="mailto:R-help-es@r-project.org">R-help-es@r-project.org</a><br>
<a href="https://stat.ethz.ch/mailman/listinfo/r-help-es" rel="noreferrer" target="_blank">https://stat.ethz.ch/mailman/listinfo/r-help-es</a><br></blockquote></div><br></div>