1-une carte
par
On va montrer comment créer pas à pas une carte à laquelle on va ajouter des informations grâce à un programme python
pour commencer
Faire fonctionner le code suivant :
import folium
c= folium.Map(location=[45.188529, 5.724524],zoom_start=10)
c.save('maCarte.html')
question 1 : Que s’est-il passé ?
question 2 : Modifier la valeur zoom_start=10
; quel est l’effet obtenu ? (pour visualiser, il suffit de rafraîchir la page web en faisant F5 par exemple)
question 3 : En recherchant les coordonnées (latitude, longitude) du Mont-Blanc, faites un travail similaire pour obtenir une page ouvrant sur une carte centrée sur le Mont-Blanc, avec un zoom régler sur 10.
Nommer la page "montblanc.html".
marqueurs
On peut avoir envie d’ajouter des marqueurs ; compiler ce code :
import folium
c= folium.Map(location=[45.188529, 5.724524],zoom_start=20)
folium.Marker([45.188529, 5.724524], popup="place Victor Hugo").add_to(c)
c.save('maCarte.html')
question 4 : Que se passe-t-il ?
On peut changer le type de marqueur ainsi que sa couleur en ajoutant des paramètres comme dans cet exemple :
folium.Marker([45.188529, 5.724524],popup="place de Verdun",folium.Icon(icon='ambulance', prefix="fa", color='red')).add_to(c)
question 5 : Faites différents essais en modifiant le symbole et sa couleur.
liste
S’il on veut pointer plusieurs lieux avec des marqueurs différents, on peut recopier plusieurs fois le code précédent en indiquant les paramètres voulus (longitude, latitude, type d’icône, couleur de l’icône) mais ce sera très long et répétitif.
On présente ici une méthode utilisant une liste :
- une liste pour les latitudes
- une liste pour les longitudes
- une liste pour les types d’icône
- une liste pour la couleur
par exemple, si on veut saisir 4 points, on aura des listes du type :
lat=[45.1167, 45.0667 , 45.1333, 45.1833]
long=[5.5833, 5.55, 5.5333, 5.6167]
nom_lieu=['Lans en Vercors', 'Villard de Lans', 'Méaudre', 'Engins']
col=['green', 'blue' ,'red', 'gray']
question 6 : choisir 4 lieux autour de Grenoble (si vous le souhaitez, les coordonnées données précédemment) sur lesquels on placera une icône en forme de bicyclette avec 4 couleurs différentes par la méthode de parcours d’une liste.
import
On peut faire beaucoup mieux que précédemment ! Imaginez que vous ayez envie de saisir des dizaines de points ... il sera bien plus pratique de les saisir dans un fichier annexe et de l’importer ; voici un modèle reprenant un cas similaire au précédent.
On peut ensuite, grâce à une fonction de la bibliothèque pandas importer ces données ; par exempledata.iloc[i,0]
importe la ième ligne de la 1ère colonne (indexée à 0).
Ce qui est importé est considéré comme une chaîne de caractères (ce qui convient ici pour la première colonne qui correspond aux lieux)
Pour la seconde colonne qui donne la latitude, il faudra forcer l’import à retourner un nombre ’flottant’ par float(data.iloc[i,1])
question 7 : adapter le code précédent avec les informations précédents pour utiliser le fichier .cvs et l’importer.
projet
Des idées :
* proposer un parcours thématique à Grenoble ou dans votre lieu de vie avec des indications.
* faites une cartographie de vos amis et/ou famille en incluant un code couleur et des indications.