Ejemplo n.º 1
0
def main():
    dwf.createFile(readPath)
    dwf.createFile(savaPath)
    analyse_Chinaeveryday()  #生成中国每日新增信息的折线图
    analyse_province()  #生成中国各省份信息折线图
    analyse_worldhistory()  #生成世界总体信息折线图
    analyse_Chinahistory()  #生成中国总体信息折线图
    page.render(savaPath + '/analyse_all.html')  #生成包含所有图像的html并存放在analysis文件夹
Ejemplo n.º 2
0
def province_children_data():
    areaTree = all_data
    for province in areaTree:
        children_name = list()
        children_total_nowConfirm = list()
        children_total_confirm = list()
        children_total_suspect = list()
        children_total_dead = list()
        children_total_deadRate = list()
        children_total_showRate = list()
        children_total_heal = list()
        children_total_healRate = list()
        children_total_showHeal = list()
        children_total_importedCase = list()
        for children in province['children']:
            children_name.append(children['name'])
            children_total_nowConfirm.append(
                int(children['total']['nowConfirm']))
            children_total_confirm.append(int(
                children['total']['confirm']))  # 累计确诊
            children_total_suspect.append(int(
                children['total']['suspect']))  # 疑似
            children_total_dead.append(int(children['total']['dead']))  # 累计死亡
            children_total_deadRate.append(children['total']['deadRate'])
            children_total_showRate.append(children['total']['showRate'])
            children_total_heal.append(int(children['total']['heal']))  # 累计治愈
            children_total_healRate.append(children['total']['healRate'])
            children_total_showHeal.append(children['total']['healRate'])
            if 'importedCase' in children['total']:
                children_total_importedCase.append(
                    int(children['total']['importedCase']))  # 境外输入
            else:
                children_total_importedCase.append(0)
        # 指定file以utf-8的格式打开
        file = Workbook(encoding='utf-8')
        # 指定打开的文件名
        table = file.add_sheet('data')
        t3_name = [
            'name', 'nowConfirm', 'confirm', 'suspect', 'dead', 'deadRate',
            'showRate', 'heal', 'healRate', 'showHeal', 'importedCase'
        ]
        for i in range(len(t3_name)):
            table.write(0, i, t3_name[i])
        for i in range(len(children_name)):
            table.write(i + 1, 0, children_name[i])
            table.write(i + 1, 1, children_total_nowConfirm[i])
            table.write(i + 1, 2, children_total_confirm[i])
            table.write(i + 1, 3, children_total_suspect[i])
            table.write(i + 1, 4, children_total_dead[i])
            table.write(i + 1, 5, children_total_deadRate[i])
            table.write(i + 1, 6, children_total_showRate[i])
            table.write(i + 1, 7, children_total_heal[i])
            table.write(i + 1, 8, children_total_healRate[i])
            table.write(i + 1, 9, children_total_showHeal[i])
            table.write(i + 1, 10, children_total_importedCase[i])
        cf.createFile(rootPath + '/中国各省市疫情信息')
        file.save(rootPath + '/中国各省市疫情信息/' + province['name'] + '.xlsx')
Ejemplo n.º 3
0
def province_total_data():
    areaTree = all_data
    print(areaTree)
    print(areaTree[0]['total'])
    print(areaTree[0]['total'].keys())
    province_name = list()
    province_total_nowConfirm = list()
    province_total_confirm = list()
    province_total_suspect = list()
    province_total_dead = list()
    province_total_deadRate = list()
    province_total_showRate = list()
    province_total_heal = list()
    province_total_healRate = list()
    province_total_showHeal = list()
    province_total_importedCase = list()
    for province in areaTree:
        province_name.append(province['name'])
        province_total_nowConfirm.append(int(province['total']['nowConfirm']))
        province_total_confirm.append(int(
            province['total']['confirm']))  # 累计确诊
        province_total_suspect.append(int(province['total']['suspect']))  # 疑似
        province_total_dead.append(int(province['total']['dead']))  # 累计死亡
        province_total_deadRate.append(province['total']['deadRate'])
        province_total_showRate.append(province['total']['showRate'])
        province_total_heal.append(int(province['total']['heal']))  # 累计治愈
        province_total_healRate.append(province['total']['healRate'])
        province_total_showHeal.append(province['total']['healRate'])
        if 'importedCase' in province['total']:
            province_total_importedCase.append(
                int(province['total']['importedCase']))  # 境外输入
        else:
            province_total_importedCase.append(0)
    # 指定file以utf-8的格式打开
    file = Workbook(encoding='utf-8')
    # 指定打开的文件名
    table = file.add_sheet('data')
    t1_name = [
        'name', 'nowConfirm', 'confirm', 'suspect', 'dead', 'deadRate',
        'showRate', 'heal', 'healRate', 'showHeal', 'importedCase'
    ]
    for i in range(len(t1_name)):
        table.write(0, i, t1_name[i])
    for i in range(len(province_name)):
        table.write(i + 1, 0, province_name[i])
        table.write(i + 1, 1, province_total_nowConfirm[i])
        table.write(i + 1, 2, province_total_confirm[i])
        table.write(i + 1, 3, province_total_suspect[i])
        table.write(i + 1, 4, province_total_dead[i])
        table.write(i + 1, 5, province_total_deadRate[i])
        table.write(i + 1, 6, province_total_showRate[i])
        table.write(i + 1, 7, province_total_heal[i])
        table.write(i + 1, 8, province_total_healRate[i])
        table.write(i + 1, 9, province_total_showHeal[i])
        table.write(i + 1, 10, province_total_importedCase[i])
    cf.createFile(rootPath + '/中国各省市总体疫情信息')
    file.save(rootPath + '/中国各省市总体疫情信息/中国各省市总体疫情信息.xlsx')
Ejemplo n.º 4
0
def province_trend():
    # province_trend_data = {}
    for p_name in province_name:
        t = getData.getProvinceTrendData(p_name)
        # province_trend_data[p_name] = t
        p_date = list()
        p_confirm = list()
        p_dead = list()
        p_heal = list()
        p_confirm_add = list()
        p_confirm_cuts = list()
        p_dead_cuts = list()
        p_now_confirm_cuts = list()
        p_heal_cuts = list()
        p_newConfirm = list()
        p_newHeal = list()
        p_newDead = list()
        p_description = list()
        for day in t:
            p_date.append(day['date'][:2] + "/" + day['date'][3:])
            p_confirm.append(int(day['confirm']))
            p_dead.append(int(day['dead']))
            p_heal.append(int(day['heal']))
            p_confirm_add.append(day['confirm_add'])
            p_confirm_cuts.append(day['confirm_cuts'])
            p_dead_cuts.append(day['dead_cuts'])
            p_now_confirm_cuts.append(day['now_confirm_cuts'])
            p_heal_cuts.append(day['heal_cuts'])
            p_newConfirm.append(int(day['newConfirm']))
            p_newHeal.append(int(day['newHeal']))
            p_newDead.append(int(day['newDead']))
            p_description.append(day['description'])
        # 指定file以utf-8的格式打开
        file = Workbook(encoding='utf-8')
        # 指定打开的文件名
        table = file.add_sheet('data')
        t1_name = ['date', 'confirm', 'dead', 'heal', 'confirm_add', 'confirm_cuts', 'dead_cuts', 'now_confirm_cuts', 'heal_cuts', 'newConfirm', 'newHeal', 'newDead', 'description']
        for i in range(len(t1_name)):
            table.write(0, i, t1_name[i])
        for i in range(len(p_date)):
            table.write(i + 1, 0, p_date[i])
            table.write(i + 1, 1, p_confirm[i])
            table.write(i + 1, 2, p_dead[i])
            table.write(i + 1, 3, p_heal[i])
            table.write(i + 1, 4, p_confirm_add[i])
            table.write(i + 1, 5, p_confirm_cuts[i])
            table.write(i + 1, 6, p_dead_cuts[i])
            table.write(i + 1, 7, p_now_confirm_cuts[i])
            table.write(i + 1, 8, p_heal_cuts[i])
            table.write(i + 1, 9, p_newConfirm[i])
            table.write(i + 1, 10, p_newHeal[i])
            table.write(i + 1, 11, p_newDead[i])
            table.write(i + 1, 12, p_description[i])
        cf.createFile(rootPath+'/中国各省市历史疫情信息')
        file.save(rootPath+'/中国各省市历史疫情信息/'+p_name+'.xlsx')
Ejemplo n.º 5
0
def main():
    dwf.createFile(readPath)
    dwf.createFile(savaPath)
    china_map_confirm()
    china_map_NewAddConfirm()
    china_map_heal()
    china_map_dead()
    china_map_nowConfirm()
    bar_now()
    china_line()
    return page.render(savaPath + '/analyse_all.html')  # 生成包含所有图像的网页并存放在analyse_all.html
Ejemplo n.º 6
0
def new_static():
    dwf.createFile(savePath)
    data1 = pd.read_excel(readPath+'/中国总体历史疫情信息/历史每日新增信息.xlsx')
    data2 = pd.read_excel(readPath+'/中国总体历史疫情信息/历史总体信息.xlsx')
    data3 = pd.read_excel(readPath+'/世界总体疫情信息/世界总体疫情信息.xlsx')
    a = data3.sum()
    a['name'] = '世界'
    a['continent'] = '世界'
    data1.iloc[-1, :].to_json(savePath+'/今日历史数据.json')
    data2.iloc[-1, :].to_json(savePath+'/今日新增数据.json')
    a.to_json(savePath+'/世界最新数据.josn')
Ejemplo n.º 7
0
def main():
    dwf.createFile(savePath)

    Countrytotalsynthesis()
    Chinaprovince()
    Worldtime()
    Chinatime()
    WorldMaptime()
    ChinaMaptime()
    ChinatotalMap()
    ChinanowdayMap()
    ProvincecityMap()
Ejemplo n.º 8
0
def allRun():
    #创建数据目录data
    cf.createFile()
    # 国外疫情数据
    getForeignData.main()
    # 国内疫情数据
    getChinaData.main()
    # 中国各省市(区)疫情数据
    getProvinceData.main()
    # 中国各省市(区)历史疫情数据
    getProvinceTrend.main()
    # 国外历史疫情数据
    getForeignTrend.main()
Ejemplo n.º 9
0
def main():
    dwf.createFile(readPath)  # 创建不存在的文件夹data
    dwf.createFile(savaPath)  # 创建不存在的文件夹../data/data_Map_analyse1

    china_history_all()
    china_provinces_imports()
    china_provinces_history()
    china_citys_history()
    china_data_all()
    foregin_history_all()
    foregin_city_all()
    world_data_all()
    Top10_confirm_country()
    return page.render(savaPath + '/analyse_all1.html')  # 生成包含所有图像的网页并存放在analyse_all.html
Ejemplo n.º 10
0
def china_total_data():
    chinaDayList = all_data["chinaDayList"]
    date_list1 = list()
    total_confirm = list()
    total_suspect = list()
    total_dead = list()
    total_heal = list()
    total_nowConfirm = list()
    total_nowSevere = list()
    total_importedCase = list()
    total_deadRate = list()
    total_healRate = list()
    total_noInfect = list()
    for total in chinaDayList:
        date_list1.append(total['date'][:2] + "/" + total['date'][3:])
        total_confirm.append(int(total['confirm']))  # 累计确诊
        total_suspect.append(int(total['suspect']))  # 疑似
        total_dead.append(int(total['dead']))  # 累计死亡
        total_heal.append(int(total['heal']))  # 累计治愈
        total_nowConfirm.append(int(total['nowConfirm']))
        total_nowSevere.append(int(total['nowSevere']))
        total_importedCase.append(int(total['importedCase']))  # 境外输入
        total_deadRate.append(float(total['deadRate']))
        total_healRate.append(float(total['healRate']))
        total_noInfect.append(int(total['noInfect']))
    # 指定file以utf-8的格式打开
    file = Workbook(encoding='utf-8')
    # 指定打开的文件名
    table = file.add_sheet('data')
    t1_name = [
        'date', 'confirm', 'suspect', 'dead', 'heal', 'nowConfirm',
        'nowSevere', 'importedCase', 'deadRate', 'healRate', 'noInfect'
    ]
    for i in range(len(t1_name)):
        table.write(0, i, t1_name[i])
    for i in range(len(date_list1)):
        table.write(i + 1, 0, date_list1[i])
        table.write(i + 1, 1, total_confirm[i])
        table.write(i + 1, 2, total_suspect[i])
        table.write(i + 1, 3, total_dead[i])
        table.write(i + 1, 4, total_heal[i])
        table.write(i + 1, 5, total_nowConfirm[i])
        table.write(i + 1, 6, total_nowSevere[i])
        table.write(i + 1, 7, total_importedCase[i])
        table.write(i + 1, 8, total_deadRate[i])
        table.write(i + 1, 9, total_healRate[i])
        table.write(i + 1, 10, total_noInfect[i])
        cf.createFile(rootPath + '/中国总体历史疫情信息')
    file.save(rootPath + '中国总体历史疫情信息/历史总体信息.xlsx')
Ejemplo n.º 11
0
def foregin_history_all():


    path = readPath + '/各国历史疫情信息'

    path2 = savaPath + '/各国历史疫情信息'
    dwf.createFile(path2)

    Filelist = []  # 将当前文件夹内的所有表名存放此列表
    for home, dirs, files in os.walk(path):
        for filename in files:
            Filelist.append(filename)

    for i in Filelist:
        data = pd.read_excel(readPath + '/各国历史疫情信息/%s' % (i), index=False)
        n = i[:-5]  # 只提取国家名,不要后缀(.xlsx)
        y1_confirm = data['confirm']
        y2_confirm_add = data['confirm_add']
        y3_heal = data['heal']
        y4_dead = data['dead']

        date_list = []
        for j in data['date']:
            date_list.append(j)

        x = date_list

        lines = (
            Line()
                .add_xaxis(xaxis_data=x)
                .add_yaxis(series_name='确诊人数', y_axis=y1_confirm, is_symbol_show=True,
                           label_opts=opts.LabelOpts(is_show=False),
                           markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"), ]))
                .add_yaxis(series_name='增加确诊人数', y_axis=y2_confirm_add, is_symbol_show=True,
                           label_opts=opts.LabelOpts(is_show=False),
                           markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"), ]))
                .add_yaxis(series_name='治愈人数', y_axis=y3_heal, is_symbol_show=True,
                           label_opts=opts.LabelOpts(is_show=False),
                           markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"), ]))
                .add_yaxis(series_name='死亡人数', y_axis=y4_dead, is_symbol_show=True,
                           label_opts=opts.LabelOpts(is_show=False),
                           markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"), ]))
                .set_global_opts(title_opts=opts.TitleOpts(title="%s" % (n) + "疫情走势", subtitle="数据来源:腾讯新闻"),
                                 yaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(font_size=10, interval=3)))
        )
        # lines.render(savaPath + '\\daliy_changes_view\\各国历史疫情信息\\%s.html' % (n), index=False)
        if flag:
            dwf.write_to_file(savaPath + '/各国历史疫情信息/%s.txt' % (n),str(lines.dump_options_with_quotes()))
        page.add(lines)
Ejemplo n.º 12
0
def foreign_children_data():
    foreign_data = all_data
    for country in foreign_data:
        country_name = list()
        country_date = list()
        country_nameMap = list()
        country_isUpdated = list()
        country_confirmAdd = list()
        country_confirmAddCut = list()
        country_confirm = list()
        country_suspect = list()
        country_dead = list()
        country_heal = list()
        if 'children' in country:
            for children in country['children']:
                country_name.append(children['name'])
                country_date.append(children['date'])
                country_nameMap.append(children['nameMap'])
                country_isUpdated.append(children['isUpdated'])
                country_confirmAdd.append(int(children['confirmAdd']))
                country_confirmAddCut.append(int(children['confirmAddCut']))
                country_confirm.append(int(children['confirm']))
                country_suspect.append(int(children['suspect']))
                country_dead.append(int(children['dead']))
                country_heal.append(int(children['heal']))
            # 指定file以utf-8的格式打开
            file = Workbook(encoding='utf-8')
            # 指定打开的文件名
            table = file.add_sheet('data')
            t2_name = [
                'name', 'date', 'nameMap', 'isUpdated', 'confirmAdd',
                'confirmAddCut', 'confirm', 'suspect', 'dead', 'heal'
            ]
            for i in range(len(t2_name)):
                table.write(0, i, t2_name[i])
            for i in range(len(country_name)):
                table.write(i + 1, 0, country_name[i])
                table.write(i + 1, 1, country_date[i])
                table.write(i + 1, 2, country_nameMap[i])
                table.write(i + 1, 3, country_isUpdated[i])
                table.write(i + 1, 4, country_confirmAdd[i])
                table.write(i + 1, 5, country_confirmAddCut[i])
                table.write(i + 1, 6, country_confirm[i])
                table.write(i + 1, 7, country_suspect[i])
                table.write(i + 1, 8, country_dead[i])
                table.write(i + 1, 9, country_heal[i])
            cf.createFile(rootPath + '/各国各地区疫情信息')
            file.save(rootPath + '/各国各地区疫情信息/' + country['name'] + '.xlsx')
Ejemplo n.º 13
0
def province_today_data():
    areaTree = all_data
    province_name = list()
    province_today_confirm = list()
    province_today_confirmCuts = list()
    province_today_dead = list()
    province_today_heal = list()
    province_today_importedCase = list()
    for province in areaTree:
        province_name.append(province['name'])
        province_today_confirm.append(int(province['today']['confirm']))
        province_today_confirmCuts.append(int(
            province['today']['confirmCuts']))
        if 'dead' in province['today']:
            province_today_dead.append(int(province['today']['dead']))
        else:
            province_today_dead.append(0)
        if 'heal' in province['today']:
            province_today_heal.append(int(province['today']['heal']))
        else:
            province_today_heal.append(0)
        if 'importedCase' in province['total']:
            province_today_importedCase.append(
                int(province['total']['importedCase']))  # 境外输入
        else:
            province_today_importedCase.append(0)
    # 指定file以utf-8的格式打开
    file = Workbook(encoding='utf-8')
    # 指定打开的文件名
    table = file.add_sheet('data')
    t2_name = [
        'name', 'confirm', 'confirmCuts', 'dead', 'heal', 'importedCase'
    ]
    for i in range(len(t2_name)):
        table.write(0, i, t2_name[i])
    for i in range(len(province_name)):
        table.write(i + 1, 0, province_name[i])
        table.write(i + 1, 1, province_today_confirm[i])
        table.write(i + 1, 2, province_today_confirmCuts[i])
        table.write(i + 1, 3, province_today_dead[i])
        table.write(i + 1, 4, province_today_heal[i])
        table.write(i + 1, 5, province_today_importedCase[i])
    cf.createFile(rootPath + '/中国各省市总体疫情信息')
    file.save(rootPath + '/中国各省市总体疫情信息/中国各省市(区)今日新增疫情信息.xlsx')
Ejemplo n.º 14
0
def china_everyday_data():
    chinaDayAddList = all_data["chinaDayAddList"]
    date_list2 = list()
    everyday_confirm = list()
    everyday_suspect = list()
    everyday_dead = list()
    everyday_heal = list()
    everyday_importedCase = list()
    everyday_infect = list()
    everyday_deadRate = list()
    everyday_healRate = list()
    for everyday in chinaDayAddList:
        date_list2.append(everyday['date'][:2] + "/" + everyday['date'][3:])
        everyday_confirm.append(int(everyday['confirm']))  # 累计确诊
        everyday_suspect.append(int(everyday['suspect']))  # 疑似
        everyday_dead.append(int(everyday['dead']))  # 累计死亡
        everyday_heal.append(int(everyday['heal']))  # 累计治愈
        everyday_importedCase.append(int(everyday['importedCase']))  # 境外输入
        everyday_infect.append(int(everyday['infect']))
        everyday_deadRate.append(float(everyday['deadRate']))
        everyday_healRate.append(float(everyday['healRate']))
    # 指定file以utf-8的格式打开
    file = Workbook(encoding='utf-8')
    # 指定打开的文件名
    table = file.add_sheet('data')
    t2_name = [
        'date', 'confirm', 'suspect', 'dead', 'heal', 'importedCase', 'infect',
        'deadRate', 'healRate'
    ]
    for i in range(len(t2_name)):
        table.write(0, i, t2_name[i])
    for i in range(len(date_list2)):
        table.write(i + 1, 0, date_list2[i])
        table.write(i + 1, 1, everyday_confirm[i])
        table.write(i + 1, 2, everyday_suspect[i])
        table.write(i + 1, 3, everyday_dead[i])
        table.write(i + 1, 4, everyday_heal[i])
        table.write(i + 1, 5, everyday_importedCase[i])
        table.write(i + 1, 6, everyday_infect[i])
        table.write(i + 1, 7, everyday_deadRate[i])
        table.write(i + 1, 8, everyday_healRate[i])
    cf.createFile(rootPath + '/中国总体历史疫情信息')
    file.save(rootPath + '/中国总体历史疫情信息/历史每日新增信息.xlsx')
Ejemplo n.º 15
0
def foreign_trend():
    # 获取国家名字
    foreign_data = all_data
    foreign_name = list()
    for country in foreign_data:
        foreign_name.append(country['name'])  # 国家名字

    # 获取各国每日数据
    # foreign_trend_data = {}
    for name in foreign_name:
        t = getData.getForeignTrendData(name)
        # foreign_trend_data[name] = t
        foreign_every_date = list()
        foreign_every_confirm_add = list()
        foreign_every_confirm = list()
        foreign_every_heal = list()
        foreign_every_dead = list()
        for day in t:
            foreign_every_date.append(day['date'][:2] + "/" + day['date'][3:])
            foreign_every_confirm_add.append(int(day['confirm_add']))
            foreign_every_confirm.append(int(day['confirm']))
            foreign_every_heal.append(int(day['heal']))
            foreign_every_dead.append(int(day['dead']))
        # 指定file以utf-8的格式打开
        file = Workbook(encoding='utf-8')
        # 指定打开的文件名
        table = file.add_sheet('data')
        t1_name = ['date', 'confirm_add', 'confirm', 'heal', 'dead']
        for i in range(len(t1_name)):
            table.write(0, i, t1_name[i])
        for i in range(len(foreign_every_date)):
            table.write(i + 1, 0, foreign_every_date[i])
            table.write(i + 1, 1, foreign_every_confirm_add[i])
            table.write(i + 1, 2, foreign_every_confirm[i])
            table.write(i + 1, 3, foreign_every_heal[i])
            table.write(i + 1, 4, foreign_every_dead[i])
        cf.createFile(rootPath + '/各国历史疫情信息')
        file.save(rootPath + '/各国历史疫情信息/' + name + '.xlsx')
Ejemplo n.º 16
0
def foreign_total_data():
    foreign_data = all_data
    foreign_name = list()
    foreign_total_continent = list()
    foreign_total_isUpdated = list()
    foreign_total_confirmAdd = list()
    foreign_total_confirmAddCut = list()
    foreign_total_confirm = list()
    foreign_total_suspect = list()
    foreign_total_dead = list()
    foreign_total_heal = list()
    foreign_total_nowConfirm = list()
    foreign_total_confirmCompare = list()
    foreign_total_nowConfirmCompare = list()
    foreign_total_healCompare = list()
    foreign_total_deadCompare = list()
    # foreign_total_children = list()
    for country in foreign_data:
        foreign_name.append(country['name'])  # 国家名字
        foreign_total_continent.append(country['continent'])
        foreign_total_isUpdated.append(country['isUpdated'])
        foreign_total_confirmAdd.append(int(country['confirmAdd']))
        foreign_total_confirmAddCut.append(int(country['confirmAddCut']))
        foreign_total_confirm.append(int(country['confirm']))
        foreign_total_suspect.append(int(country['suspect']))
        foreign_total_dead.append(int(country['dead']))
        foreign_total_heal.append(int(country['heal']))
        foreign_total_nowConfirm.append(int(country['nowConfirm']))
        foreign_total_confirmCompare.append(int(country['confirmCompare']))
        foreign_total_nowConfirmCompare.append(
            int(country['nowConfirmCompare']))
        foreign_total_healCompare.append(int(country['healCompare']))
        foreign_total_deadCompare.append(int(country['deadCompare']))
        # foreign_total_children.append(country['children'])
    # 指定file以utf-8的格式打开
    file = Workbook(encoding='utf-8')
    # 指定打开的文件名
    table = file.add_sheet('data')
    t1_name = [
        'name', 'continent', 'isUpdated', 'confirmAdd', 'confirmAddCut',
        'confirm', 'suspect', 'dead', 'heal', 'nowConfirm', 'confirmCompare',
        'nowConfirmCompare', 'healCompare', 'deadCompare'
    ]
    for i in range(len(t1_name)):
        table.write(0, i, t1_name[i])
    for i in range(len(foreign_name)):
        table.write(i + 1, 0, foreign_name[i])
        table.write(i + 1, 1, foreign_total_continent[i])
        table.write(i + 1, 2, foreign_total_isUpdated[i])
        table.write(i + 1, 3, foreign_total_confirmAdd[i])
        table.write(i + 1, 4, foreign_total_confirmAddCut[i])
        table.write(i + 1, 5, foreign_total_confirm[i])
        table.write(i + 1, 6, foreign_total_suspect[i])
        table.write(i + 1, 7, foreign_total_dead[i])
        table.write(i + 1, 8, foreign_total_heal[i])
        table.write(i + 1, 9, foreign_total_nowConfirm[i])
        table.write(i + 1, 10, foreign_total_confirmCompare[i])
        table.write(i + 1, 11, foreign_total_nowConfirmCompare[i])
        table.write(i + 1, 12, foreign_total_healCompare[i])
        table.write(i + 1, 13, foreign_total_deadCompare[i])
    cf.createFile(rootPath + '/世界总体疫情信息')
    file.save(rootPath + '/世界总体疫情信息/世界总体疫情信息.xlsx')
Ejemplo n.º 17
0
def china_citys_history():

    page1 = Page()
    dwf.createFile(savaPath+'/中国各省的城市历史疫情信息')
    path = readPath + '中国各省的城市历史疫情信息'
    floder = glob.glob(os.path.join(path, "*"))


    # 判断数据是否存在
    def checknan(name):
        if np.any(pd.isnull(name)) == True:
            name.fillna(value="0", inplace=True)

    for name in floder:
        for root, dirs, files in os.walk(name, topdown=False):

            for filename in files:
                name = ''.join('%s' % id for id in name)
                # print(type(filename))
                # print(type(name))
                filepath = name + '/' + filename
                filepath = filepath.replace('\\','/')
                data = pd.read_excel(filepath, index=False)
                province_name = re.findall('([\u4e00-\u9fa5]*)\\\\[\u4e00-\u9fa5]*\.xlsx', filepath)
                province_name = ''.join('%s' % id for id in province_name)
                city_name = re.findall('([\u4e00-\u9fa5]*)\.xlsx', filepath)
                city_name = ''.join('%s' % id for id in city_name)
                # print(province_name+'and'+city_name)
                checknan(data['confirm'])
                checknan(data['confirm_add'])
                checknan(data['heal'])
                checknan(data['dead'])

                y1_confirm = data['confirm']
                y1_confirm = list(y1_confirm)
                y1_confirm = [int(i) for i in y1_confirm]

                y2_confirm_add = data['confirm_add']
                y2_confirm_add = list(y2_confirm_add)
                y2_confirm_add = [int(i) for i in y2_confirm_add]

                y3_heal = data['heal']
                y3_heal = list(y3_heal)
                y3_heal = [int(i) for i in y3_heal]

                y4_dead = data['dead']
                y4_dead = list(y4_dead)
                y4_dead = [int(i) for i in y4_dead]

                date_list = []
                for j in data['date']:
                    date_list.append(j)

                x = date_list

                lines = (
                    Line()
                        .add_xaxis(xaxis_data=x)
                        .add_yaxis(series_name='确诊人数', y_axis=y1_confirm, is_symbol_show=True,
                                   label_opts=opts.LabelOpts(is_show=False),
                                   markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"), ]))
                        .add_yaxis(series_name='增加确诊人数', y_axis=y2_confirm_add, is_symbol_show=True,
                                   label_opts=opts.LabelOpts(is_show=False),
                                   markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"), ]))
                        .add_yaxis(series_name='治愈人数', y_axis=y3_heal, is_symbol_show=True,
                                   label_opts=opts.LabelOpts(is_show=False),
                                   markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"), ]))
                        .add_yaxis(series_name='死亡人数', y_axis=y4_dead, is_symbol_show=True,
                                   label_opts=opts.LabelOpts(is_show=False),
                                   markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"), ]))
                        .set_global_opts(
                        title_opts=opts.TitleOpts(title="%s" % (city_name) + "疫情走势", subtitle="数据来源:腾讯新闻"),
                        yaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(font_size=10, interval=3)))
                )

                name1 = name.replace('data/中国各省的城市历史疫情信息\\', 'data/data_DaliyChangeView/中国各省的城市历史疫情信息/')
                dwf.createFile(name1)

                save_path = name1 + '%s.txt'

                # lines.render(save_path % (city_name), index=False)
                page1.add(lines)  # 将图像加入同一页
                if flag:
                    dwf.write_to_file(save_path % (city_name),
                                      str(lines.dump_options_with_quotes()))
            page.render(savaPath + '/中国各省的城市历史疫情信息/analyse_all.html')
Ejemplo n.º 18
0
def china_provinces_history():

    page1 = Page()

    path2 = savaPath + '/中国各省市历史疫情信息'
    dwf.createFile(path2)

    path = readPath + '/中国各省市历史疫情信息'
    Filelist = []
    for home, dirs, files in os.walk(path):
        for filename in files:
            Filelist.append(filename)

    # print(Filelist)
    def checknan(name):
        if np.any(pd.isnull(name)) == True:
            name.fillna(value="0", inplace=True)

    for i in Filelist:
        data = pd.read_excel(readPath + '/中国各省市历史疫情信息/%s' % (i), index=False)
        n = i[:-5]

        checknan(data['confirm'])
        checknan(data['confirm_add'])
        checknan(data['heal'])
        checknan(data['dead'])

        y1_confirm = data['confirm']
        y1_confirm = list(y1_confirm)
        y1_confirm = [int(i) for i in y1_confirm]

        y2_confirm_add = data['confirm_add']
        y2_confirm_add = list(y2_confirm_add)
        y2_confirm_add = [int(i) for i in y2_confirm_add]

        y3_heal = data['heal']
        y3_heal = list(y3_heal)
        y3_heal = [int(i) for i in y3_heal]

        y4_dead = data['dead']
        y4_dead = list(y4_dead)
        y4_dead = [int(i) for i in y4_dead]

        date_list = []
        for j in data['date']:
            date_list.append(j)

        x = date_list

        linse12 = (
            Line()
                .add_xaxis(xaxis_data=x)
                .add_yaxis(series_name='确诊人数', y_axis=y1_confirm, is_symbol_show=True,
                           label_opts=opts.LabelOpts(is_show=False),
                           markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"), ]))
                .add_yaxis(series_name='增加确诊人数', y_axis=y2_confirm_add, is_symbol_show=True,
                           label_opts=opts.LabelOpts(is_show=False),
                           markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"), ]))
                .add_yaxis(series_name='治愈人数', y_axis=y3_heal, is_symbol_show=True,
                           label_opts=opts.LabelOpts(is_show=False),
                           markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"), ]))
                .add_yaxis(series_name='死亡人数', y_axis=y4_dead, is_symbol_show=True,
                           label_opts=opts.LabelOpts(is_show=False),

                           markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max"), ]))
                .set_global_opts(title_opts=opts.TitleOpts(title="%s" % (n) + "疫情走势", subtitle="数据来源:腾讯新闻"),
                                 yaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(font_size=10, interval=3)))
        )

        # lines.render(savaPath + '\\daliy_changes_view\\中国各省市历史疫情信息\\%s.html' % (n), index=False)
        page1.add(linse12)  # 将图像加入同一页
        if flag:
            dwf.write_to_file(savaPath + '/中国各省市历史疫情信息/%s.txt' % (n), str(linse12.dump_options_with_quotes()))
    page.render(savaPath + '/中国各省市历史疫情信息/analyse_all.html')
Ejemplo n.º 19
0
def foregin_city_all():
    path = readPath + '/各国各地区疫情信息'

    path2 = savaPath + '/各国疫情严重程度排名前十地区信息'
    dwf.createFile(path2)

    Filelist = []  # 将当前文件夹内的所有表名存放此列表
    for home, dirs, files in os.walk(path):
        for filename in files:
            Filelist.append(filename)

    # 判断数据是否存在
    def checknan(name):
        if np.any(pd.isnull(name)) == True:
            name.fillna(value="0", inplace=True)

    # 随机颜色生成用于制作南丁格尔玫瑰图
    def randomcolor(kind):

        colors = []
        for i in range(kind):
            colArr = ['1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F']
            color = ""
            for i in range(6):
                color += colArr[random.randint(0, 14)]
            colors.append("#" + color)
        return colors

    for i in Filelist:
        page1 = Page()
        data = pd.read_excel(readPath + '/各国各地区疫情信息/%s' % (i), index=False)
        data_sort = data.sort_values(axis=0, ascending=False, by=['confirm'])
        data_message = data_sort.head(10)  # 提取疫情严重程度排名前十地区的信息
        n = i[:-5]  # 只提取国家名,不要后缀(.xlsx)

        checknan(data_message['confirm'])
        checknan(data_message['heal'])
        checknan(data_message['dead'])

        y1_confirm = data_message['confirm']
        y1_confirm = list(y1_confirm)
        y1_confirm = [int(i) for i in y1_confirm]

        y2_dead = data_message['dead']
        y2_dead = list(y2_dead)
        y2_dead = [int(i) for i in y2_dead]

        y3_heal = data_message['heal']
        y3_heal = list(y3_heal)
        y3_heal = [int(i) for i in y3_heal]

        name_list = []
        for j in data_message['name']:
            name_list.append(j)

        x = name_list
        color_series = randomcolor(len(x))
        # Bars = (
        #     Bar(init_opts=opts.InitOpts(width='1080px',height='700px'))
        #         .add_xaxis(xaxis_data=x)
        #         .add_yaxis(series_name='确诊人数', yaxis_data=y1_confirm)
        # )


        #####画南丁格尔玫瑰图##########
        # 画出确诊人数的图
        fig = Pie(init_opts=opts.InitOpts(width='500px', height='700px'))
        fig.add("", [list(z) for z in zip(x, y1_confirm)],
                radius=['30%', '135%'],
                center=['50%', '65%'],
                rosetype='area')
        fig.set_global_opts(title_opts=opts.TitleOpts(title=n + '疫情严重程度排名前十地区的确诊人数'),
                            legend_opts=opts.LegendOpts(is_show=False))
        fig.set_series_opts(label_opts=opts.LabelOpts(is_show=True, position='inside', font_size=12,
                                                      formatter='{b}:{c}例', font_style='italic', font_weight='bold',
                                                      font_family='Microsoft YaHei'))  # b:province;c:num
        fig.set_colors(color_series)
        # 画出死亡人数的图
        fig1 = Pie(init_opts=opts.InitOpts(width='500px', height='700px'))
        fig1.add("", [list(z) for z in zip(x, y2_dead)],
                 radius=['30%', '135%'],
                 center=['50%', '65%'],
                 rosetype='area')
        fig1.set_global_opts(title_opts=opts.TitleOpts(title=n + '疫情严重程度排名前十地区的死亡人数'),
                             legend_opts=opts.LegendOpts(is_show=False))
        fig1.set_series_opts(label_opts=opts.LabelOpts(is_show=True, position='inside', font_size=12,
                                                       formatter='{b}:{c}例', font_style='italic', font_weight='bold',
                                                       font_family='Microsoft YaHei'))  # b:province;c:num
        # 画出治愈人数的图
        fig2 = Pie(init_opts=opts.InitOpts(width='500px', height='700px'))
        fig2.add("", [list(z) for z in zip(x, y3_heal)],
                 radius=['30%', '135%'],
                 center=['50%', '65%'],
                 rosetype='area')
        fig2.set_global_opts(title_opts=opts.TitleOpts(title=n + '疫情严重程度排名前十地区的治愈人数'),
                             legend_opts=opts.LegendOpts(is_show=False))
        fig2.set_series_opts(label_opts=opts.LabelOpts(is_show=True, position='inside', font_size=12,
                                                       formatter='{b}:{c}例', font_style='italic', font_weight='bold',
                                                       font_family='Microsoft YaHei'))  # b:province;c:num
        page1.add(fig)  # 将图像加入同一页
        page1.add(fig1)  # 将图像加入同一页
        page1.add(fig2)  # 将图像加入同一页
        page1.render(savaPath + '/各国疫情严重程度排名前十地区信息/%s.html' % (n), index=False)
        if flag:
            dwf.write_to_file(savaPath + '/各国疫情严重程度排名前十地区信息/(确诊)%s.txt' % (n),str(fig.dump_options_with_quotes()))
            dwf.write_to_file(savaPath + '/各国疫情严重程度排名前十地区信息/(死亡)%s.txt' % (n),str(fig1.dump_options_with_quotes()))
            dwf.write_to_file(savaPath + '/各国疫情严重程度排名前十地区信息/(治愈)%s.txt' % (n),str(fig2.dump_options_with_quotes()))