Récemment, j'ai essayé d'utiliser folium, une bibliothèque qui affiche des données sur une carte, alors je l'ai résumé dans un article tout en étudiant.
Folium est une bibliothèque python qui visualise les données avec une carte de Leaflet.js.
Vous pouvez tirer parti à la fois de la manipulation des données Python et du mappage de dépliants.
Github:https://github.com/python-visualization/folium Documentation:https://python-visualization.github.io/folium/
Vous pouvez l'installer avec pip install.
installation de folium
$ pip install folium
Tout d'abord, utilisez jupyter pour afficher une carte du Japon centrée sur la gare de Tokyo ([35.681167, 139.767052]).
Si vous entrez la latitude et la longitude dans location
, vous pouvez afficher une carte centrée sur cette position.
Tracez une carte du Japon centrée sur la gare de Tokyo
import folium
map_ = folium.Map(location=[35.681167, 139.767052], zoom_start=7)
map_
La carte pourrait être affichée avec seulement 3 lignes.
Ensuite, mappons les informations de localisation du grand magasin à la carte créée du Japon. J'ai recherché les informations de localisation du grand magasin sur HP et je les ai enregistrées sous forme de fichier csv.
Le fichier csv est enregistré dans ce format. (department_info.csv
)
store_name | contry | area | prefecture | city | address | latitude | longitude | depart | |
---|---|---|---|---|---|---|---|---|---|
0 | Magasin principal Nihonbashi Mitsukoshi | Japon | Kanto | Tokyo | Chuo-ku | 1 Nihonbashi Muromachi, Chuo-ku, Tokyo-4-1 | 35.685633 | 139.773430 | Mitsukoshi |
1 | Ginza Mitsukoshi | Japon | Kanto | Tokyo | Chuo-ku | 4 Ginza, Chuo-ku, Tokyo-6-16 | 35.671370 | 139.765738 | Mitsukoshi |
・ ・ ・ | |||||||||
88 | Palette de beauté ShinQs Machida | Japon | Kanto | Tokyo | Ville de Machida | 6 Haramachida, Machida-shi, Tokyo-4-1 jumelles Machida Tokyu OUEST 3F | 35.542690 | 139.446409 | Grand magasin Tokyu |
89 | Grand magasin Nagano Tokyu | Japon | Chubu | Préfecture de Nagano | Ville de Nagano | 1 Minami Chitose, Ville de Nagano, Préfecture de Nagano-1-1 | 36.645052 | 138.188676 | Grand magasin Tokyu |
Ajouter un marqueur de grand magasin à la carte affichée précédemment
import pandas as pd
data = pd.read_csv('department_info.csv')
color_list = {'Mitsukoshi':'red', 'Daimaru':'blue', 'Seibu Sogo':'green',
'Takashimaya':'purple', 'Hankyu Hanshin':'orange', 'Grand magasin Tokyu':'darkred'}
for k, v in data.iterrows():
folium.Marker([v.latitude, v.longitude], popup=v.store_name, icon=folium.Icon(color=color_list[v.depart])).add_to(map_)
map_
popup=xxx
Si vous ajoutez un commentaire à xxx, il peut être affiché sous forme de pop-up.
icon=folium.Icon(color=xxx1, icon=xxx2)
Le type d'icône de marqueur peut être modifié en spécifiant xxx1 et xxx2.
Couleurs utilisables pour xxx1
[‘red’, ‘blue’, ‘green’, ‘purple’, ‘orange’, ‘darkred’,
’lightred’, ‘beige’, ‘darkblue’, ‘darkgreen’, ‘cadetblue’,
‘darkpurple’, ‘white’, ‘pink’, ‘lightblue’, ‘lightgreen’,
‘gray’, ‘black’, ‘lightgray’]
Marqueurs pouvant être utilisés pour xxx2 https://glyphsearch.com/?library=font-awesome
Ensuite, affichons un cercle d'un rayon de 20 km pour chaque grand magasin affiché.
La zone de 20 km du grand magasin est affichée en yens
for k, v in data.iterrows():
folium.Circle([v.latitude, v.longitude], radius=20 * 1000, tooltip='20km', popup=v.store_name
, color=color_list[v.depart], fill_color=None).add_to(map_)
map_
J'ai enregistré la dernière carte créée au format html.
Enregistrer la carte créée
map_.save('department_location.html')
J'ai pu visualiser une belle carte plus facilement que prévu.
(Republié en raison de la migration du compte)
Recommended Posts