电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Python實現疫情地圖可視化

瀏覽:47日期:2022-06-28 11:46:31
一、 json模塊

JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,易于閱讀和編寫,同時也易于機器解析和生成,并有效地提升網絡傳輸效率。

json.loads():將json格式的str轉化成python的數據格式; json.loads():將python的數據格式(字典或列表)轉化成json格式;

# 如何將json數據解析成我們所熟悉的Python數據類型?import json# 將json格式的str轉化成python的數據格式:字典dic = json.loads(’{'name':'Tom','age':23}’)res = json.loads(’['name','age','gender']’)print(f’利用loads將json字符串轉化成Python數據類型{dic}’,type(dic))print(f’利用loads將json字符串轉化成Python數據類型{res}’,type(res))

Python實現疫情地圖可視化

dics = {'name':'Tom','age':23}result = json.dumps(dics)print(type(result))result

Python實現疫情地圖可視化

二、通過Python實現疫情地圖可視化

需求:爬取疫情的數據、如何處理json數據以及根據疫情數據如何利用pyecharts繪制疫情地圖。

Python實現疫情地圖可視化

Python實現疫情地圖可視化

1.數據的獲取(基于request模塊)

import requestsimport json# 國內疫情數據China_url = ’https://view.inews.qq.com/g2/getOnsInfo?name=disease_h5’headers = { # 瀏覽器偽裝 ’User-Agent’:’Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36’, ’referer’: ’https://news.qq.com/’,}# 發起get請求,獲取響應數據response = requests.get(China_url,headers=headers).json()data = json.loads(response[’data’])# 保存數據with open(’./2021-02-03國內疫情.json’,’w’,encoding=’utf-8’) as f: # 不采用ASCII編碼 f.write(json.dumps(data,ensure_ascii=False,indent=2))

爬取的數據保存格式為json,開頭的部分數據如下:

Python實現疫情地圖可視化

2.將json格式的數據保存到Excel

無論是json數據存儲的,還是Python的基本數據類型存儲的,對于數據分析都不是很友好,所以我們可以將其數據存儲類型轉化為pandas的DataFrame類型,因為DataFrame和Excel可以更好的相互轉換。

生成的數據模式如下:

Python實現疫情地圖可視化

將以上的數據進行處理,獲得Excel表一樣規范的數據格式。

import pandas as pdchinaTotalData = pd.DataFrame(china_citylist)# 將整體數據chinaTotalData中的today和total數據添加到DataFrame中# 處理total字典里面的各個數據項# ======================================================================confirmlist = []suspectlist = []deadlist = []heallist = []deadRatelist = []healRatelist = []# print(chinaTotalData[’total’].values.tolist()[0])for value in chinaTotalData[’total’].values.tolist(): confirmlist.append(value[’confirm’]) suspectlist.append(value[’suspect’]) deadlist.append(value[’dead’]) heallist.append(value[’heal’]) deadRatelist.append(value[’deadRate’]) healRatelist.append(value[’healRate’])chinaTotalData[’confirm’] = confirmlistchinaTotalData[’suspect’] = suspectlistchinaTotalData[’dead’] = deadlistchinaTotalData[’heal’] = heallistchinaTotalData[’deadRate’] = deadRatelistchinaTotalData[’healRate’] = healRatelist# ===================================================================# 創建全國today數據today_confirmlist = []today_confirmCutslist = []for value in chinaTotalData[’today’].values.tolist(): today_confirmlist.append(value[’confirm’]) today_confirmCutslist.append(value[’confirmCuts’])chinaTotalData[’today_confirm’] = today_confirmlistchinaTotalData[’today_confirmCuts’] = today_confirmCutslist# ==================================================================# 刪除total、today兩列chinaTotalData.drop([’total’,’today’],axis=1,inplace=True)chinaTotalData.head()# 將其保存到Excel中chinaTotalData.to_excel(’2021-02-03國內疫情.xlsx’,index=False)

處理好的數據結構如下表:

Python實現疫情地圖可視化

3.應用pyecharts進行數據可視化

pyecharts是一款將python與echarts結合的強大的數據可視化工具。繪制出來的圖比Python的Matplotlib簡單美觀。使用之前需要在Python環境中按照pycharts。在終端中輸入命令:pip install pyecharts

利用pyecharts繪制疫情地圖根據上面的疫情數據,我們可以利用其畫出全國的疫情地圖在繪制前,我們需要安裝echarts的地圖包(可根據不同的地圖需求進行安裝)

pip install echarts-countries-pypkgpip install echarts-china-provinces-pypkgpip install echarts-china-cities-pypkgpip install echarts-china-misc-pypkgpip install echarts-china-countries-pypkgpip install echarts-united-kingdom-pypkg

# 導入對應的繪圖工具包import pandas as pdfrom pyecharts import options as optsfrom pyecharts.charts import Mapdf = pd.read_excel(’./2021-02-03國內疫情.xlsx’)# 1.根據繪制國內總疫情圖(確診)data = df.groupby(by=’province’,as_index=False).sum()data_list = list(zip(data[’province’].values.tolist(),data[’confirm’].values.tolist()))# 數據格式[(黑龍江,200),(吉林,300),...]def map_china() -> Map: c = ( Map() .add(series_name='確診病例',data_pair=data_list,maptype=’china’) .set_global_opts( title_opts = opts.TitleOpts(title=’疫情地圖’), visualmap_opts=opts.VisualMapOpts(is_piecewise=True, pieces = [{'max':9, 'min':0, 'label':'0-9','color':'#FFE4E1'}, {'max':99, 'min':10, 'label':'10-99','color':'#FF7F50'}, {'max':499, 'min':100, 'label':'100-4999','color':'#F08080'}, {'max':999, 'min':500, 'label':'500-999','color':'#CD5C5C'}, {'max':9999, 'min':1000, 'label':'1000-9999','color':'#990000'}, {'max':99999, 'min':10000, 'label':'10000-99999','color':'#660000'},] ) ) ) return cd_map = map_china()d_map.render('mapEchrts.html')

最終的運行效果如下:

Python實現疫情地圖可視化

注:以上的運行環境是Python3.7版本,IDE是基于瀏覽器端的Jupter Notebook。

以上就是Python實現疫情地圖可視化的詳細內容,更多關于python 疫情地圖可視化的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 九州网址_专注于提供网址大全分享推广中文网站导航服务 | 棕刚玉-白刚玉厂家价格_巩义市东翔净水材料厂 | 化妆品加工厂-化妆品加工-化妆品代加工-面膜加工-广东欧泉生化科技有限公司 | 商用绞肉机-熟肉切片机-冻肉切丁机-猪肉开条机 - 广州市正盈机械设备有限公司 | 叉车电池-叉车电瓶-叉车蓄电池-铅酸蓄电池-电动叉车蓄电池生产厂家 | 英超直播_英超免费在线高清直播_英超视频在线观看无插件-24直播网 | 天坛家具官网 | 广东燎了网络科技有限公司官网-网站建设-珠海网络推广-高端营销型外贸网站建设-珠海专业h5建站公司「了了网」 | 经济师考试_2025中级经济师报名时间_报名入口_考试时间_华课网校经济师培训网站 | 3d打印服务,3d打印汽车,三维扫描,硅胶复模,手板,快速模具,深圳市精速三维打印科技有限公司 | 流量卡中心-流量卡套餐查询系统_移动电信联通流量卡套餐大全 | 热缩管切管机-超声波切带机-织带切带机-无纺布切布机-深圳市宸兴业科技有限公司 | 环氧树脂地坪_防静电地坪漆_环氧地坪漆涂料厂家-地壹涂料地坪漆 环球电气之家-中国专业电气电子产品行业服务网站! | 隧道风机_DWEX边墙风机_SDS射流风机-绍兴市上虞科瑞风机有限公司 | 制样机-密封锤式破碎机-粉碎机-智能马弗炉-南昌科鑫制样 | 大型冰雕-景区冰雕展制作公司,3D创意设计源头厂家-[赛北冰雕] | 对夹式止回阀厂家,温州对夹式止回阀制造商--永嘉县润丰阀门有限公司 | 防锈油-助焊剂-光学玻璃清洗剂-贝塔防锈油生产厂家 | 废气处理设备-工业除尘器-RTO-RCO-蓄热式焚烧炉厂家-江苏天达环保设备有限公司 | 北京网站建设-企业网站建设-建站公司-做网站-北京良言多米网络公司 | 智慧农业|农业物联网|现代农业物联网-托普云农物联网官方网站 | 周易算网-八字测算网 - 周易算网-宝宝起名取名测名字周易八字测算网 | 天坛家具官网| 耐力板-PC阳光板-PC板-PC耐力板 - 嘉兴赢创实业有限公司 | 防爆型气象站_农业气象站_校园气象站_农业四情监测系统「山东万象环境科技有限公司」 | 注塑机-压铸机-塑料注塑机-卧式注塑机-高速注塑机-单缸注塑机厂家-广东联升精密智能装备科技有限公司 | 山东钢格板|栅格板生产厂家供应商-日照森亿钢格板有限公司 | 高效节能电机_伺服主轴电机_铜转子电机_交流感应伺服电机_图片_型号_江苏智马科技有限公司 | Copeland/谷轮压缩机,谷轮半封闭压缩机,谷轮涡旋压缩机,型号规格,技术参数,尺寸图片,价格经销商 CTP磁天平|小电容测量仪|阴阳极极化_双液系沸点测定仪|dsj电渗实验装置-南京桑力电子设备厂 | 冷却塔厂家_冷却塔维修_冷却塔改造_凉水塔配件填料公司- 广东康明节能空调有限公司 | 热处理温控箱,热处理控制箱厂家-吴江市兴达电热设备厂 | 合肥卓创建筑装饰,专业办公室装饰、商业空间装修与设计。 | LNG鹤管_内浮盘价格,上装鹤管,装车撬厂家-连云港赛威特机械 | 气动绞车,山东气动绞车,气动绞车厂家-烟台博海石油机械有限公司 气动隔膜泵厂家-温州永嘉定远泵阀有限公司 | 斗式提升机_链式斗提机_带式斗提机厂家无锡市鸿诚输送机械有限公司 | 华中线缆有限公司-电缆厂|电缆厂家|电线电缆厂家 | 气力输送_输送机械_自动化配料系统_负压吸送_制造主力军江苏高达智能装备有限公司! | 卓能JOINTLEAN端子连接器厂家-专业提供PCB接线端子|轨道式端子|重载连接器|欧式连接器等电气连接产品和服务 | BHK汞灯-百科|上海熙浩实业有限公司 | STRO|DTRO-STRO反渗透膜(科普)_碟滤 | 小型玉石雕刻机_家用玉雕机_小型万能雕刻机_凡刻雕刻机官网 |