Una forma de mostrar ciertos datos geolocalizados en un mapa, de Google, consiste en utilizar el módulo gmplot.
A continuación las instrucciones para obtener un mapa parecido a este:
Primero, instale el módulo gmplot:
- Mediante la línea de comandos:
pip install gmplot
- O, mediante PyCharm.
Vaya a File > Default Settings …
En la ventana que aparece, seleccione la opción de Project Interpreter. Luego, de clic en el símbolo + para agregar un módulo.
Finalmente, en esta ventana, agregue el nombre del módulo: gmplot. Y, de clic en Install Packages
Luego, obtenga la posición (latitud y longitud) del cualquier lugar que desee, en el sitio: http://www.coordenadas-gps.com/
Finalmente, las instrucciones en Python para graficar.
import gmplot #Ubicar el centro del mapa en Ecuador #Para esto, se necesita la latitud y la longitud de Ecuador: #latitud: -1.831239 #longitud: -78.18340599999999 #Esta funcion necesita los siguientes argumentos: latitud, longitud, zoom gmap = gmplot.GoogleMapPlotter(-1.831239, -78.18340599999999, 7) #diccionario de ejemplos con las latitudes y longitudes ciudades = { "Guayaquil" : {"region":"costa","habitantes":2350915,"coordenada":(-2.1709979, -79.92235920000002)}, "Quito": {"region":"sierra","habitantes":2239191,"coordenada":(-0.1806532,-78.46783820000002)}, "Cuenca": {"region":"sierra","habitantes":505585,"coordenada":(-2.9001285, -79.0058965)}, "Bahia de Caraquez": {"region":"costa","habitantes":20921,"coordenada":(-0.6186619,-80.42736439999999)}, "Loja":{"region":"sierra","habitantes":214855,"coordenada":(-4.0078909,-79.21127690000003)}, "Ambato": {"region":"sierra","habitantes":329856,"coordenada":(-1.2543408,-78.6228504)} } #procesamos el diccionario para tener dos listas: latitud y longitud latitud = [] longitud = [] for key in ciudades.keys(): lat, long = ciudades[key]["coordenada"] habitantes = ciudades[key]["habitantes"] #agregamos a la lista latitud.append(lat) longitud.append(long) # Marcadores de Google: marker #Por cada ciudad con menos de 1000000 (un millon) de habitantes if habitantes > 1000000: #vamos agregando uno a uno los datos de la latitud y longitud correspondientes gmap.marker(lat,long,c='red') elif habitantes > 100000: gmap.marker(lat, long, c='yellow') else: gmap.marker(lat, long, c='green') #Mapa de calor: heatmap #recibe dos listas: latitud y longitud #ademas del radio (radius) de calor #Y, la opacidad (cuan opaco) desea el mapa de calor, en general. gmap.heatmap(latitud, longitud,radius=30, opacity=0.9) #graficar en un archivo html nombreDeArchivo = "ecuador.html" print("Archivo final: "+nombreDeArchivo) gmap.draw(nombreDeArchivo)