”数据可视化“这个话题,相信大家并不陌生,在一些平台,经常可以看到一些动态条形图的视频,大多都是某国家 GDP 的变化或者不同国家疫情中感染人数的变化等等。
这篇文章,我们将使用 Python 绘制动态词频条形图,顾名思义,就是以词频作为数量指标的动态条形图。
前期准备
输入以下命令,安装必须的库:
pip install JiashuResearchTools
pip install jieba
pip install pandas
pip install bar_chart_race
数据的选择与获取
我们这次使用的数据是简书文章收益排行榜,日期范围为 2020 年 6 月 20 日至 2021 年 9 月 18 日。
从网页中解析数据的过程较为复杂,我们使用简书数据科学库 JianshuResearchTools 完成。
为方便调试,我们使用 Jupyter Notebook 进行交互式开发。
导入 JianshuResearchTools,并为其设置别名:
import JianshuResearchTools as jrt
调用接口,获取 2021 年 9 月 17 日的数据:
jrt.rank.GetArticleFPRankData("20210917")
返回的数据如下:
[{'ranking': 0,
'aslug': 'a03adf9d5dd5',
'title': '幸得君心似我心',
'author_name': '雁阵惊寒',
'author_avatar_url': 'https://upload.jianshu.io/users/upload_avatars/26225608/682b892e-6661-4f98-9aab-20b4038a433b.jpg',
'fp_to_author': 3123.148,
'fp_to_voter': 3123.148,
'total_fp': 6246.297},
{'ranking': 1,
'aslug': '56f7fe236842',
'title': '伤痕',
'author_name': '李文丁',
'author_avatar_url': 'https://upload.jianshu.io/users/upload_avatars/26726969/058e18c4-908f-4710-8df7-1d34d05d61e3.jpg',