Python3 hizo epidemia del mapa de datos en tiempo real (con código fuente)

cepillo a diario con la epidemia de los datos y las noticias en el metro, con la esperanza de ver más buenas noticias.

Visto hace poco todos brote de escritura de los datos de mapa en tiempo real, como ingeniero de pruebas, por supuesto, no puede caer.

El programa siguiente se genera en tiempo real los datos generados por la distribución de Python, a nivel nacional y en cada provincia.

(Datos de microblogging, las actualizaciones se puede retrasar. Este documento es un intercambio de tecnología)

mapa nacional de datos

la provincia de Hubei

 

la provincia de Guangdong

Los módulos de la línea de comandos introducidos

pip instalar solicitudes

pip instalar re

pip instalar pyecharts

Seguido por el mapa global, mapa de provincia china, China mapa de la ciudad, mapa del condado de China, mapas regionales de China , importar el mapa necesaria

pip instalar eCharts-países-pypkg

pip instalar eCharts-China-provincias-pypkg

pip instalar eCharts-China-ciudades-pypkg

pip instalar eCharts-China-condados-pypkg

pip instalar eCharts-china-misc-pypkg

El código fuente (el código de Internet, si la infracción de contacto, por favor borra)

# -*- coding: utf-8 -*-
# @Time : 2020/3/18 10:03
# @Author : Liqiju
# @File : HTT.py
# @Software : PyCharm
import requests
import json
import re
from pyecharts.charts import Map
from pyecharts import options

#发起网络请求,获取新浪微博数据
result = requests.get('https://interface.sina.cn/news/wap/fymap2020_data.d.json?1580097300739&&callback=sinajp_1580097300873005379567841634181')
#使用正则表达式处理数据
json_str = re.search("\(+([^)]*)\)+", result.text).group(1)
html = f"{json_str}"
table = json.loads(f"{html}")
province_data = []

#循环获取省份名称和对应的确诊数据
for province in table['data']['list']:

    #将省份数据添加到列表中去
    province_data.append((province['name'], province['value']))

    city_data = []
    #循环获取城市名称和对应的确诊数据
    for city in province['city']:
        #这里要注意对应上地图的名字需要使用mapName这个字段
        city_data.append((city['mapName'], city['conNum']))
    #使用Map,创建省份地图
    map_province = Map()
    #设置地图上的标题和数据标记,添加省份和确诊人数
    map_province.set_global_opts(title_opts=options.TitleOpts(title=province['name'] + "实时疫情图-确诊人数:" + province['value']), visualmap_opts=options.VisualMapOpts(is_piecewise=True,#设置是否为分段显示
                #自定义数据范围和对应的颜色,这里是取色工具获取的颜色值。
                pieces=[
                    {"min": 1000, "label": '>1000人', "color": "#6F171F"},
                    {"min": 500, "max": 1000, "label": '500-1000人', "color": "#C92C34"},
                    {"min": 100, "max": 499, "label": '100-499人', "color": "#E35B52"},
                    {"min": 10, "max": 99, "label": '10-99人', "color": "#F39E86"},
                    {"min": 1, "max": 9, "label": '1-9人', "color": "#FDEBD0"}]))
    #将数据添加进去,生成省份地图,所以maptype要对应省份。
    map_province.add("确诊", city_data, maptype = province['name'])
    #一切完成,那么生成一个省份的html网页文件,取上对应省份的名字。
    map_province.render(province['name'] + ".html")
#创建国家地图
map_country = Map()
#设置地图上的标题和数据标记,添加确诊人数
map_country.set_global_opts(title_opts=options.TitleOpts(title="中国实时疫情图-确诊人数:" + table['data']["gntotal"]), visualmap_opts=options.VisualMapOpts(is_piecewise=True,#设置是否为分段显示
                #自定义数据范围和对应的颜色,这里是取色工具获取的颜色值。
                pieces=[
                    {"min": 1000, "label": '>1000人', "color": "#6F171F"}, # 不指定 max,表示 max 为无限大(Infinity)。
                    {"min": 500, "max": 1000, "label": '500-1000人', "color": "#C92C34"},
                    {"min": 100, "max": 499, "label": '100-499人', "color": "#E35B52"},
                    {"min": 10, "max": 99, "label": '10-99人', "color": "#F39E86"},
                    {"min": 1, "max": 9, "label": '1-9人', "color": "#FDEBD0"}]))
#将数据添加进去,生成中国地图,所以maptype要对应china。
map_country.add("确诊", province_data, maptype="china")
#一切完成,那么生成一个html网页文件。
map_country.render("country.html")
print("疫情图已生成!!!")

 Copiar el código anterior para PyCharm, excepto la carrera.

Los resultados operativos

La generación de un grupo nacional, en tiempo real Mapa de páginas provincias

Abra un navegador en él. O elegir un navegador abierto en PyCharm

Mirar a su ciudad natal en Guangxi

Esperamos que la epidemia rápidamente en el pasado, para restaurar la vida normal.

La vida no es fácil, no es fácil de prueba. ---- a las 18:28 el 18 de marzo el 2020.

 

 

Publicados 221 artículos originales · ganado elogios 207 · vistas 170 000 +

Supongo que te gusta

Origin blog.csdn.net/qq_29720657/article/details/104950278
Recomendado
Clasificación