200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 基于Python的微信朋友圈数据可视化分析之地点

基于Python的微信朋友圈数据可视化分析之地点

时间:2023-07-11 03:54:20

相关推荐

基于Python的微信朋友圈数据可视化分析之地点

前提

朋友圈的相关数据请参照上一篇文章《基于Python的微信朋友圈数据可视化分析之个性签名》获取,本篇文章默认需要的数据已经下载保存至本地的csv文件中了。

将好友的地点按照省份进行统计

import pandas as pdfrom collections import Counterfrom pyecharts import Mapwechat_info = pd.read_csv("wechat_friends_info.csv", encoding="gbk")province = wechat_info['Province']province_list = []for i in list(province):if isinstance(i, str):if ' ' in i or i.encode( 'UTF-8' ).isalpha(): # 如果是英文城市,则代表不是国内的城市,暂不做处理continueprovince_list.append(i)friends_address = list(Counter(province_list).keys())friends_count = list(Counter(province_list).values())map = Map("我的微信好友分布", "@高正杰", width=1200, height=600)map.add("", friends_address, friends_count, maptype='china',is_visualmap=True, is_piecewise=True,visual_text_color="#000",visual_range_text=["", ""],pieces=[{"max": 160, "min": 70, "label": "高数值"},{"max": 69, "min": 0, "label": "低数值"},])map.render('province.html')

生成的结果截图如下所示,体验地址

将好友的地点按照城市进行统计

import pandas as pdfrom collections import Counterfrom pyecharts import Geofrom pyecharts.datasets.coordinates import get_coordinatewechat_info = pd.read_csv("wechat_friends_info.csv", encoding="gbk")city = wechat_info['City']city_list = []for i in list(city):if isinstance(i, str):if ' ' in i or i.encode( 'UTF-8' ).isalpha(): # 如果是英文城市,则代表不是国内的城市,暂不做处理continueif get_coordinate(i) is None:if get_coordinate(i+'市') is not None:i = i + '市'elif get_coordinate(i+'区') is not None:i = i + '区'city_list.append(i)def geo_formatter(params):return params.name + ' : ' + params.value[2]geo = Geo("我的微信好友分布","@高正杰",title_color="#fff",title_pos="center",width=1200,height=600,background_color="#404a59",)attr, value = geo.cast(Counter(city_list))geo.add("",attr,value,visual_range=[0, 91],tooltip_formatter=geo_formatter, # 重点在这里,将函数直接传递为参数。visual_text_color="#fff",symbol_size=15,is_visualmap=True,)geo.render('city.html')

生成的结果截图如下所示,体验地址

遇到的问题

现象

Jupyter notebook中显示空白,生成的HTML文件打开只显示南海诸岛,不显示其他内容。

原因

自从 v0.3.2 开始,为了缩减项目本身的体积以及维持 pyecharts 项目的轻量化运行,pyecharts 将不再自带地图 js 文件。如用户需要用到地图图表,则需要自行安装对应的地图文件包。

解决办法

将以下几个文件包全包安装,关于这些包的含义,可以参考《自定义地图》

pip install echarts-countries-pypkgpip install echarts-china-provinces-pypkgpip install echarts-china-cities-pypkgpip install echarts-china-counties-pypkgpip install echarts-china-misc-pypkg

注意:如果安装完成后,在 Jupyter Notebook 中生成的图形还是无法查看,则需要重启 Jupyter Notebook 即可解决问题。

参考文献

地理地图数据自定义地图

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。