{"id":178,"date":"2017-02-22T18:32:59","date_gmt":"2017-02-22T17:32:59","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/xallam\/?p=178"},"modified":"2017-02-22T19:26:31","modified_gmt":"2017-02-22T18:26:31","slug":"mapa-de-eventos-con-python","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/xallam\/2017\/02\/22\/mapa-de-eventos-con-python\/","title":{"rendered":"Mapa de eventos con Python"},"content":{"rendered":"<p>Una forma de mostrar ciertos datos geolocalizados en un mapa, de Google, consiste en utilizar el m\u00f3dulo\u00a0<strong>gmplot<\/strong>.<\/p>\n<p>A continuaci\u00f3n las instrucciones para obtener un mapa parecido a este:<\/p>\n<p><a href=\"http:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/mapa.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-182 aligncenter\" src=\"http:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/mapa-300x120.png\" alt=\"mapa\" width=\"510\" height=\"204\" srcset=\"https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/mapa-300x120.png 300w, https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/mapa-768x307.png 768w, https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/mapa-1024x409.png 1024w, https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/mapa.png 1243w\" sizes=\"auto, (max-width: 510px) 100vw, 510px\" \/><\/a><\/p>\n<p>&nbsp;<br \/>\n<a href=\"http:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/mapa2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-188 aligncenter\" src=\"http:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/mapa2-300x262.png\" alt=\"mapa2\" width=\"300\" height=\"262\" srcset=\"https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/mapa2-300x262.png 300w, https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/mapa2.png 695w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Primero, instale el m\u00f3dulo\u00a0<strong>gmplot<\/strong>:<\/p>\n<ol>\n<li>Mediante la l\u00ednea de comandos:\n<pre>pip install gmplot<\/pre>\n<\/li>\n<li>O, mediante PyCharm.<\/li>\n<\/ol>\n<p>Vaya a <strong>File &gt; Default Settings ...<\/strong> \u00a0<a href=\"http:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso1.png\"><br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-179 aligncenter\" src=\"http:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso1-168x300.png\" alt=\"paso1\" width=\"168\" height=\"300\" srcset=\"https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso1-168x300.png 168w, https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso1.png 276w\" sizes=\"auto, (max-width: 168px) 100vw, 168px\" \/><\/a><\/p>\n<p>En la ventana que aparece, seleccione la opci\u00f3n de\u00a0<strong>Project Interpreter<\/strong>. Luego, de clic en el s\u00edmbolo\u00a0<strong>+<\/strong> para agregar un m\u00f3dulo.<\/p>\n<p><a href=\"http:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso2.png\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-180 aligncenter\" src=\"http:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso2-300x195.png\" alt=\"paso2\" width=\"448\" height=\"291\" srcset=\"https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso2-300x195.png 300w, https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso2-768x499.png 768w, https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso2-1024x666.png 1024w, https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso2.png 1038w\" sizes=\"auto, (max-width: 448px) 100vw, 448px\" \/><\/a><\/p>\n<p>Finalmente, en esta ventana, agregue el nombre del m\u00f3dulo:\u00a0<strong>gmplot.\u00a0<\/strong>Y, de clic en\u00a0<strong>Install Packages<\/strong><\/p>\n<p><a href=\"http:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso3.png\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-181 aligncenter\" src=\"http:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso3-300x243.png\" alt=\"paso3\" width=\"472\" height=\"382\" srcset=\"https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso3-300x243.png 300w, https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso3-768x623.png 768w, https:\/\/blog.espol.edu.ec\/xallam\/files\/2017\/02\/paso3.png 925w\" sizes=\"auto, (max-width: 472px) 100vw, 472px\" \/><\/a><\/p>\n<p>Luego, obtenga la posici\u00f3n (latitud y longitud) del cualquier lugar que desee, en el sitio:\u00a0<a href=\"http:\/\/www.coordenadas-gps.com\/\">http:\/\/www.coordenadas-gps.com\/<\/a><\/p>\n<p>Finalmente, las instrucciones en Python para graficar.<\/p>\n<pre><strong>import gmplot\r\n\r\n#Ubicar el centro del mapa en Ecuador\r\n#Para esto, se necesita la latitud y la longitud de Ecuador:\r\n#latitud: -1.831239\r\n#longitud: -78.18340599999999\r\n\r\n\r\n#Esta funcion necesita los siguientes argumentos: latitud, longitud, zoom\r\ngmap = gmplot.GoogleMapPlotter(-1.831239, -78.18340599999999, 7)\r\n\r\n\r\n#diccionario de ejemplos con las latitudes y longitudes\r\nciudades = {\r\n\r\n    \"Guayaquil\" : {\"region\":\"costa\",\"habitantes\":2350915,\"coordenada\":(-2.1709979, -79.92235920000002)},\r\n    \"Quito\": {\"region\":\"sierra\",\"habitantes\":2239191,\"coordenada\":(-0.1806532,-78.46783820000002)},\r\n    \"Cuenca\": {\"region\":\"sierra\",\"habitantes\":505585,\"coordenada\":(-2.9001285, -79.0058965)},\r\n    \"Bahia de Caraquez\": {\"region\":\"costa\",\"habitantes\":20921,\"coordenada\":(-0.6186619,-80.42736439999999)},\r\n    \"Loja\":{\"region\":\"sierra\",\"habitantes\":214855,\"coordenada\":(-4.0078909,-79.21127690000003)},\r\n    \"Ambato\": {\"region\":\"sierra\",\"habitantes\":329856,\"coordenada\":(-1.2543408,-78.6228504)}\r\n}\r\n\r\n#procesamos el diccionario para tener dos listas: latitud y longitud\r\nlatitud = []\r\nlongitud = []\r\n\r\nfor key in ciudades.keys():\r\n    lat, long = ciudades[key][\"coordenada\"]\r\n    habitantes = ciudades[key][\"habitantes\"]\r\n\r\n    #agregamos a la lista\r\n    latitud.append(lat)\r\n    longitud.append(long)\r\n\r\n    # Marcadores de Google: marker\r\n    #Por cada ciudad con menos de 1000000 (un millon) de habitantes\r\n    if habitantes &gt; 1000000:\r\n        #vamos agregando uno a uno los datos de la latitud y longitud correspondientes\r\n        gmap.marker(lat,long,c='red')\r\n    elif habitantes &gt; 100000:\r\n        gmap.marker(lat, long, c='yellow')\r\n    else:\r\n        gmap.marker(lat, long, c='green')\r\n\r\n\r\n#Mapa de calor: heatmap\r\n#recibe dos listas: latitud y longitud\r\n#ademas del radio (radius) de calor\r\n#Y, la opacidad (cuan opaco) desea el mapa de calor, en general.\r\ngmap.heatmap(latitud, longitud,radius=30, opacity=0.9)\r\n\r\n\r\n#graficar en un archivo html\r\nnombreDeArchivo = \"ecuador.html\"\r\nprint(\"Archivo final: \"+nombreDeArchivo)\r\ngmap.draw(nombreDeArchivo)\r\n\r\n\r\n\r\n<\/strong><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Una forma de mostrar ciertos datos geolocalizados en un mapa, de Google, consiste en utilizar el m\u00f3dulo\u00a0gmplot. A continuaci\u00f3n las instrucciones para obtener un mapa parecido a este: &nbsp; Primero, instale el m\u00f3dulo\u00a0gmplot: Mediante la l\u00ednea de comandos: pip install &hellip; <a href=\"https:\/\/blog.espol.edu.ec\/xallam\/2017\/02\/22\/mapa-de-eventos-con-python\/\">Sigue leyendo <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":16,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[146853,20777],"tags":[146867,1882,20777,146869],"class_list":["post-178","post","type-post","status-publish","format-standard","hentry","category-coding","category-python","tag-gmplot","tag-gps","tag-python","tag-usgs"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/xallam\/wp-json\/wp\/v2\/posts\/178","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/xallam\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/xallam\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/xallam\/wp-json\/wp\/v2\/users\/16"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/xallam\/wp-json\/wp\/v2\/comments?post=178"}],"version-history":[{"count":12,"href":"https:\/\/blog.espol.edu.ec\/xallam\/wp-json\/wp\/v2\/posts\/178\/revisions"}],"predecessor-version":[{"id":195,"href":"https:\/\/blog.espol.edu.ec\/xallam\/wp-json\/wp\/v2\/posts\/178\/revisions\/195"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/xallam\/wp-json\/wp\/v2\/media?parent=178"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/xallam\/wp-json\/wp\/v2\/categories?post=178"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/xallam\/wp-json\/wp\/v2\/tags?post=178"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}