当前位置: 首页 > 科技观察

用Python绘制中国地图实现各省数据可视化

时间:2023-03-18 02:24:33 科技观察

第一步:安装pyechartsPyecharts是一个强大的数据可视化工具,结合了python和echarts。本文使用0.1.9.4版本pipinstallpyecharts==0.1.9.4第二步:读取数据我的数据在Excel表格中,如下图:Excel数据使用xlrd(如果没有,通过pipinstallxlrd安装)读取Excel表格中的数据#第一种方式,使用xlrd读取Excel表格中的数据data=xlrd.open_workbook('data.xlsx')table=data.sheet_by_name('Sheet1')province=table.col_values(0)[1:]num=table.col_values(1)[1:]如果没有对应的Excel文件又不想新建,那么自己定义一个字典即可,其中key是省份,value是对应的数量,然后取出对应的值#第二种方式是直接写字典,然后取出对应的数据province_distribution={'四川':239.0,'浙江':231.0,'福建':203.0,'江苏':185.0,'湖南':152.0,'山东':131.0,'安徽':100.0,'广东':89.0,'河北':87.0,'湖北'':84.0,'吉林':75.0,'Shanghai':70.0,'江西':64.0,'广西':64.0,'贵州':64.0,'北京':63.0,'云南':53.0,'重庆':49.0,'河南':48.0,'陕西':38.0,‘山西’:37.0,‘辽宁’:33.0,‘新疆’:25.0,‘内蒙古’:23.0,‘黑龙江’:20.0,‘天津’:19.0,‘甘肃’:13.0,‘海南’:9.0,'青海':7.0,'宁夏':4.0,'西藏':0.0}provice=list(province_distribution.keys())num=list(province_distribution.values())第三步:绘制chinaMap=Map(width=1200,身高=600)chinaMap.add(name="分布数量",attr=province,value=num,visual_range=[0,239],maptype='china',is_visualmap=True)chinaMap.render(path="中国地图.html")其中参数name是指地图正上方显示的标题,attr是包含各省名称的列表,value是包含各省对应值的列表,visual_range是指取值范围整个数据中,maptype是指地图的类型,is_visualmap代表是否显示颜色。此时会生成一个名为“中国地图.html”的文件,打开后如下图:如果要将没有省名的地图另存为图片,可以点击地图右边的下载按钮,因为比较远,我录屏的时候没有把下载按钮录下来,但是你电脑上肯定能看到。第四步:进一步优化可以看到,上图中的省份名称只有在鼠标选中时才会显示,保存的图片不会显示省份名称。如果要显示各省的名称,则需要修改html文件。推荐使用notepad++(一种文本编辑软件,百度直接下载,很简单)打开“中国地图.html”文件,然后在1923行的系列中添加“标签”:{"normal":{"show":true}并保存,如下:修改html文件,然后打开“中国地图.html”文件,可以看到各个省份的名称,如下图:带省份名称的地图