# Pour installer folium, effacez le # (avant le "!").
#!pip install folium
import pandas as pd
import folium
Las_Vegas_hospitals = folium.Map(location = [36.159852152227444, -115.17775402970094], zoom_start = 11)
C'est fait, mais maintenant, il faut l'afficher. Sinon, on ne voit toujours rien !
# Affichage de la carte.
Las_Vegas_hospitals
## 3. Chargement et affichage des données
## 3.1 Chargement du tableau de données
Chargez (UpLoad) le fichier "Clark_County_Hospitals.csv" dans le répertoire "/demo/" du JupyterLab.
Vérifiez que le nom du fichier est entre "".
# df = Data Frame (tableau de données)
df = pd.read_csv("Clark_County_Hospitals.csv")
# Quels sont les champs de notre df ?
df.keys()
# Quel est le type de 'Latitude'
df["Latitude"]
# Quel est le type de 'Name'
df["Name"]
# Combien d'hopitaux ?
len(df["Name"])
description = df.describe()
description
Affichage par itération (Loop) dans le tableau de données (df) pour ajouter des marquers (markers)
en fonction de la latitude et de la longitude pour chaqe ligne.
Ajout d'une info-bulle (tooltips) affichant le nom de chaque hôpital.
# Boucle qui parcourt successivements toutes les lignes pour récupérer les latitudes et les longitudes ainsi que le nom.
# Puis, le marqueur est ajouté à la carte.
# Attention aux ":" à la fin de la boucle for.
for index, row in df.iterrows():
folium.Marker(
[row['Latitude'],row['Longitude']],
tooltip = row['Name']).add_to(Las_Vegas_hospitals)
Las_Vegas_hospitals
Affichage par itération (Loop) dans le tableau de données (df) pour représenter des quantités.
Sans proportionalité entre la quantité et la surface
Las_Vegas_hospitals_circle = folium.Map(location = [36.159852152227444, -115.17775402970094], zoom_start = 7)
for index, row in df.iterrows():
folium.CircleMarker(
[row['Latitude'],row['Longitude']],
radius = row["Total_cases_2015"] / 5000).add_to(Las_Vegas_hospitals_circle)
Las_Vegas_hospitals_circle
Avec proportionalité entre la quantité et la surface
# calcul de la quantité maximum => le nombre de cas maximum !
column = df["Total_cases_2015"]
max_cases = column.max()
print(max_cases)
# représentation fonction du rayon associé à la quantité maximale (max_cases)
Las_Vegas_hospitals_circle2 = folium.Map(location = [36.159852152227444, -115.17775402970094], zoom_start = 11)
for index, row in df.iterrows():
folium.CircleMarker(
[row['Latitude'],row['Longitude']],
radius = ((row["Total_cases_2015"]**(1/2)) * (50) / (max_cases)**(1/2))).add_to(Las_Vegas_hospitals_circle2)
Las_Vegas_hospitals_circle2
Reste à mettre une légende et une échelle (: !)