Trazado de centros de prueba aprobados por ICMR en Google Maps usando el paquete folium

Folium es una poderosa biblioteca de visualización de datos en Python que se creó principalmente para ayudar a las personas a visualizar datos geoespaciales. Con Folium, se puede crear un mapa de cualquier lugar del mundo siempre que se conozcan sus valores de latitud y longitud. Además, los mapas creados por Folium son de naturaleza interactiva, por lo que puede acercar y alejar el mapa después de renderizarlo, lo cual es una función muy útil. Folium se basa en los poderes de disputa de datos del ecosistema de Python y los poderes de mapeo de la biblioteca Leaflet.js. En Python, los datos se manipulan y luego se visualizan a través de folium en un mapa de folleto.

Instalación

Antes de que pueda usar Folium, es posible que deba instalarlo en el sistema usando cualquiera de los dos métodos a continuación.

$ pip install folium

o

$ conda install -c conda-forge folium

Trabajaremos con el conjunto de datos ICMR que tiene 7 columnas: laboratorio, dirección, código PIN, ciudad, estado, tipo, latitud y longitud. Usaremos el archivo ‘ICMRTestingLabsWithCoords.csv’ en el conjunto de datos. Para descargar el conjunto de datos, haga clic aquí .

Empezando

Importación de bibliotecas necesarias

import folium
import pandas as pd

Importando conjunto de datos

df = pd.DataFrame(pd.read_csv(‘ICMRTestingLabsWithCoords.csv’))

Por enfocar la ventana solo en India. Pasamos las coordenadas de India junto con el zoom Parmenter a folium.Map().

phone_map = folium.Map(location = [20.5937, 78.9629], 
                            zoom_start=4.4)

Hacer el marcador

Para mostrar el nombre y el tipo de laboratorio, ya sea privado o del gobierno. Además, para pasar las coordenadas de los marcadores, escribiremos un código Python para ello.

locate = {}
for i, j, k, l in zip(df['latitude'], 
                      df['longitude'], 
                      df['lab'], 
                      df['type']):

    temp=[]
    temp.extend((i, j))
    locate['loc']=temp
    marker = folium.Marker(location = locate['loc'], 
                           popup = str(k)+' Type:'+str(l))
    marker.add_to(phone_map)

Ejecutaremos un bucle for a través de 4 columnas ‘latitud’, ‘longitud’, ‘laboratorio y ‘tipo’. Primero, creamos una lista ‘temporal’ que contiene la latitud y la longitud de los laboratorios particulares a medida que los recorremos todos. Esta lista particular de latitud y longitud se pasa luego a un diccionario de localización. Ahora creamos un marcador llamando a ‘.Marker’ desde el folium y pasando el diccionario de localización a la ubicación y la ventana emergente toma el nombre del laboratorio y el tipo de laboratorio en formato de string. El tipo de marcador es ‘folium.map.Marker’. Finalmente llamamos a ‘.add_to’ fuera del marcador y pasamos el phone_map. Ahora que nuestros pines están listos, es hora de mostrar los pines trazados. Lo hacemos llamando a phone_map.

phone_map

Código completo:

Python3

import folium
  
import pandas as pd
  
phone_map = folium.Map(location=[20.5937, 78.9629],
                       zoom_start=4.4)
df = pd.DataFrame(pd.read_csv('ICMRTestingLabsWithCoords.csv'))
  
locate = {}
  
for i, j, k, l in zip(df['latitude'], df['longitude'],
                      df['lab'], df['type']):
  
    temp = []
    temp.extend((i, j))
    locate['loc'] = temp
    marker = folium.Marker(location=locate['loc'],
                           popup=str(k)+' Type:'+str(l))
  
    marker.add_to(phone_map)
  
phone_map

Producción:

Publicación traducida automáticamente

Artículo escrito por smarthardik10 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *