[PYTHON] Visualisez les préfectures avec de nombreux itinéraires par préfecture sur une carte du Japon

Objectif

C'est un mémorandum lors de la visualisation des préfectures avec de nombreux itinéraires par préfecture sur une carte du Japon

code

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

from japanmap import pref_names,pref_code,picture
import matplotlib.pyplot as plt
from pylab import rcParams
import json
import requests

color_map = {}
num = [1]

#rcParams['figure.figsize'] = 8,8
plt.imsave("./picture.jpg ", picture({'Hokkaido':'blue','Préfecture d'Osaka':(255,0,0),}));

# get the number of prefecture
url = 'http://express.heartrails.com/api/json?method=getPrefectures'
ret = requests.get(url)
ret_json = json.loads(ret.text)
number_of_prefectures=len(ret_json["response"]["prefecture"])
print(number_of_prefectures)

# get max number
for i in range(number_of_prefectures):
    pref_name=pref_names[i+1]
    url = 'http://express.heartrails.com/api/json?method=getLines&prefecture=' + pref_name
    ret = requests.get(url)
    ret_json = json.loads(ret.text)
    num.append( len(ret_json["response"]["line"]) )
max = max( num )
print(max)

# get number of lines in all prefecture
for i in range(number_of_prefectures):
    pref_name=pref_names[i+1]
    url = 'http://express.heartrails.com/api/json?method=getLines&prefecture=' + pref_name
    ret = requests.get(url)
    ret_json = json.loads(ret.text)
    print(i, pref_name, len(ret_json["response"]["line"]), ret_json["response"]["line"][0])
    val = len(ret_json["response"]["line"])
    color_map[pref_name] = (0, val * 255/max, 255)

plt.imsave("./result.jpg ", picture(color_map));

tester

$ python sample-map.py
47
88
0 Hokkaido 25 Ligne secondaire JR Hakodate
1 Préfecture d'Aomori 15 Ligne JR Gono
2 Ligne 14 JR Hachinohe de la préfecture d'Iwate
3 Préfecture de Miyagi 15 Ligne JR Senzan
4 Préfecture d'Akita 10 Ligne JR Gono
5 Préfecture de Yamagata 9 Ligne JR Senzan
6 Préfecture de Fukushima 13 Ligne JR Tadami
7 Préfecture d'Ibaraki 14 Ligne JR Utsunomiya
8 Préfecture de Tochigi 15 Ligne JR Ryomo
9 Préfecture de Gunma 16 Ligne JR Joetsu
10 Préfecture de Saitama 28 Ligne JR Keihin Tohoku
11 Préfecture de Chiba 34 Ligne JR Kururi
12 Ligne Tokyo 88 JR Chuo
13 Préfecture de Kanagawa 38 Ligne principale JR Chuo
14 Préfecture de Niigata 18 Ligne JR Joetsu
15 Préfecture de Toyama 17 Ligne JR Jobata
16 Préfecture d'Ishikawa 8 Ligne JR Nanao
17 Préfecture de Fukui 6 Ligne principale JR Hokuriku
18 Préfecture de Yamanashi 4 Ligne principale JR Chuo
19 Préfecture de Nagano 14 Ligne principale JR Chuo
20 Préfecture de Gifu 15 Ligne principale JR Chuo
21 Préfecture de Shizuoka 15 Ligne JR Ito
22 Préfecture d'Aichi 37 Ligne principale JR Chuo
23 Mie Prefecture 19 JR Sangu Line
24 Préfecture de Shiga 13 Ligne principale JR Hokuriku
25 Kyoto Prefecture 32 JR Kyoto Line
26 Préfecture d'Osaka 54 Ligne JR Kyoto
27 Préfecture de Hyogo 40 Ligne JR Kakogawa
28 Préfecture de Nara 16 Ligne JR Wakayama
29 Préfecture de Wakayama 10 Ligne JR Wakayama
30 Tottori Prefecture 6 JR Hakubi Line
31 Préfecture de Shimane 5 Ligne JR Yamaguchi
32 Préfecture d'Okayama 16 Ligne JR Hakubi
33 Préfecture d'Hiroshima 17 Ligne JR Kabe
34 Yamaguchi Prefecture 9 JR Ube Line
35 Tokushima Prefecture 6 JR Dosan Line
36 Ligne préliminaire de la préfecture de Kagawa 8 JR
37 Ligne préliminaire de la préfecture d'Ehime 12 JR
38 Ligne préliminaire 9 JR de la préfecture de Kochi
39 Préfecture de Fukuoka 28 Ligne principale JR Kudai
40 Saga Prefecture 9 Ligne JR Sasebo
41 Préfecture de Nagasaki 11 Ligne JR Sasebo
42 Préfecture de Kumamoto 15 Ligne Triangle JR
43 Oita Prefecture 5 JR Kudai Main Line
44 Miyazaki Prefecture 5 Ligne JR Yoshito
45 Préfecture de Kagoshima 12 Ligne JR Yoshito
46 Préfecture d'Okinawa 1 Okinawa Yui Rail

result.jpg

Tokyo est la plus courante. À côté de cela, il existe de nombreuses zones urbaines autour d'Osaka et de Nagoya.

référence

Mémorandum lors de l'acquisition d'informations sur la zone / informations sur la préfecture / informations sur l'itinéraire / informations sur la station / informations sur la station la plus proche avec l'API HeartRails Express (python)

Recommended Posts

Visualisez les préfectures avec de nombreux itinéraires par préfecture sur une carte du Japon
Folium: Visualisez les données sur une carte avec Python
Visualiser grib2 sur une carte avec python (matplotlib)
Carte des informations de location sur une carte avec python
[Python] Tracer les données par préfecture sur une carte (nombre de voitures possédées dans tout le pays)
Visualisez et comprenez le maillage régional du Japon sur une carte
Visualisez les buts et les buts de la Ligue B sur une carte de chaleur
Dessinez le japonais avec matplotlib sur Ubuntu
Dessinez facilement une carte avec matplotlib.basemap