Crear un mapa con Folium en Python

logo python

En este articulo, mostraré como crear un mapa con Folium en Python, por diferentes vías.

Folium es una librería fantástica, que nos permite crear mapas de un modo simple y ágil y que puede ser una magnifica alternativa a basemap.

La forma básica de crear un mapa en Folium es :

import folium
from folium import plugins
import ipywidgets
import pandas as pd
import numpy as np

folium.Map()#aqui llamamos al mapa simple 

Otra forma simple, es crear el mapa, acotando elemento como el zoom, el área,  la escala  y tamaño del mapa y una dirección especifica. Esta ultima mediante su latitud y longitud.

folium.Map(location=[39.473861, -0.360830], zoom_start=80, width=500, height= 600, control_scale=True)

Otros artículos sobre Python

Esta muestra además la escala y se puede controlar el tamaño del mapa

Controlar el tamaño del mapa

También podemos controlar el tamaño del mapa es empleando  el modulo figure() de la librería branca().

from branca.element import Figure

#folium.Map()
map_1= folium.Map(location=[39.473861, -0.360830], zoom_start=80, control_scale=True)
map_1
fig = Figure(width=1000, height=500)
fig.add_child(map_1)
fig

Guardar el mapa

Para guardar el mapa en folium, basta con darle un ruta al  método save()

Tipos de mapas con widgets

Con folium es fácil añadir widgets a los mapas, que los hacen muy útiles y amplian mucho las posibiidades de visualización.

En el ejemplo mostramos diferentes vistas de un mapa, empleando los widgets:

#seleccion de los widgets
select_widgets=ipywidgets.Select( 
    options=['Open Street Map', 'Terrain', 'Watercolor', 'Positron', 'Dark Mater'],
    value = 'Open Street Map',
    description ='Tipos de mapa:',
    disable= False)
def selectMap(maptype):
    if maptype == "Open Street Map":
        display(folium.Map(location=[39.473861, -0.360830], zoom_start=80, control_scale=True))
    if maptype == "Terrain":
        display(folium.Map(location=[-12.055815, -77.0567980], zoom_start=50, control_scale=True))
    if maptype == "Watercolor":
        display(folium.Map(location=[20.0521337, -75.860336], zoom_start=10, tiles='Stamen Watercolor', control_scale=True))
    if maptype == "Positron":
        display(folium.Map(location=[40.410610, -3.490617], zoom_start=10, tiles='CartoDB Positron', control_scale=True))
    if maptype == "Dark Mater":
        display(folium.Map(location=[40.410610, -3.490617], zoom_start=10, tiles='CartoDB Dark_Matter', control_scale=True))

#interactuando entre el widget y la funcion
ipywidgets.interact(selectMap, maptype=select_widgets)

Hay mucho mas que sacar de Folium, como mapas de calor, así que te invito a investigar esta útil librería y sacarle jugo a sus enormes posibilidades.

Espero que esto sirva de ayuda a alguien. Muchas gracias.

Pocos saben lo mucho que debemos saber, para darnos cuenta de lo poco que sabemos

R. Tagore

Error EOFError en Python

python error

El error EOFError, es un tipo de error que suele aparecer con cierta regularidad en Python y que podemos manipular con excepciones.

Se genera cuando una de las funciones integradas input () o raw_input () alcanza una condición de fin de archivo (EOF) sin leer ningún dato.

Esto ocurre cuando le hemos pedido al usuario una entrada pero no hemos proporcionado ninguna entrada en el cuadro de entrada.

Este error, a veces se experimenta al usar IDE en línea.

Podemos solucionar este problema usando try y except, para manipular la excepción.

Podemos solucionar este problema usando try y except, para manipular la excepción.

Un código como este, arrojará un error del  tipo EOFerror

Podemos manejarlo de la siguiente forma:

n = int(input())
print(n * 10)

Podemos manejarlo de la siguiente forma:

try:
    n = int(input())
    print(n * 10)
    
except EOFError as e:
    print(e)

Lee sobre otros errores de Python en este blog

Hay que sembrar un árbol, un ansia, un sueño, un hijo, porque la vida es eso , sembrar, sembrar, sembrar

J. A. Buesa

NameError: name exit is not defined

python error

En este post veremos el NameError: name exit is not defined, en  Python que cómo indica es un error de nombre, y que podemos solucionar con cierta facilidad.

Ver más errores en Python en este blog

La solución a esto es importar sys y luego importar exit.

Seria algo así:

from sys
import exit
exit()

También puede intentar esta vía

import sys
sys.exit()

Y esto es todo, debería funcionar.

Espero sinceramente que este post, sirva de ayuda  a alguien y muchas gracias.

Entrena duro y en silencio, que el éxito sea tu grito

D.