升序排序中国_干货满满!6行python代码挑战展示2020下半年中国最娱乐的人气男明星人气排行榜top10!...
本回答主要以2020下半年中国最娱乐的人气男明星top10变化动态条形图为例来展示如何用python生成动态条形图。
知乎视频www.zhihu.com
一、 python生成动态条形图:以2020下半年中国最娱乐的人气男明星top10变化动态条形图为例。
1. 安装第三方库
1.1
下载第三方库的网址:https://git-scm.com/download/win
(cmd中利用pip install的版本不是2.0,运行时会报错,所以上官网下载最新的会好一些)
首先右击此电脑-属性-查看电脑操作系统位数,本人电脑为64位。
1.2 git安装完毕后,在cmd中切换到想要下载的目录,然后下载:git clone https://github.com/dexplo/bar_chart_race.git
其中,https://github.com/dexplo/bar_chart_race.git 就是它的git地址;
1.3 我这里下载的目录是在:D:程序python
在cmd中进入该文件夹,然后运行:python setup.py install
,安装完成后,会提示:Finished processing dependencies for bar-chart-race==0.2.0
,看到这个,就证明我们成功了!
2. 数据收集及预处理
本文数据从123粉丝网爬取,经处理后如下,最好以date为DataFrame的index(可以私信本人获取此数据,还有1989年-2019年各省市年GDP数据文件):
3. 举例
import bar_chart_race as bcr
import pandas as pd
df=pd.read_csv('男明星人气数据.csv', index_col ='date')
bcr.bar_chart_race(df,filename='动态条形图1.mp4',steps_per_period=24,title='中国最娱乐的男明星人气排行榜(数据源自123粉丝网)')
4.1 默认情况
import bar_chart_race as bcr
import pandas as pd
df=pd.read_csv('男明星人气数据.csv', index_col ='date')
bcr.bar_chart_race(df,filename='动态条形图2.mp4',title='中国最娱乐的男明星人气排行榜(数据源自123粉丝网)')
4.2 设置中文:显示中文
import bar_chart_race as bcr
import pandas as pd
from pylab import * #设置显示中文
mpl.rcParams['font.sans-serif']=['MicroSoft YaHei']#设置中文字体为雅黑
df=pd.read_csv('男明星人气数据.csv', index_col ='date')
bcr.bar_chart_race(df,filename='动态条形图-显示中文.mp4',title='中国最娱乐的男明星人气排行榜(数据源自123粉丝网)')
4.3 转换图的方向
import bar_chart_race as bcr
import pandas as pd
from pylab import * #设置显示中文
mpl.rcParams['font.sans-serif']=['MicroSoft YaHei']#设置中文字体为雅黑
df=pd.read_csv('男明星人气数据.csv', index_col ='date')
bcr.bar_chart_race(df,filename='动态条形图-转换方向.mp4',
orientation='v',#使用 orientation 参数,转换图的方向,’h’和’v’;
title='中国最娱乐的男明星人气排行榜(数据源自123粉丝网)')
4.4 改变排序情况
import bar_chart_race as bcr
import pandas as pd
from pylab import * #设置显示中文
mpl.rcParams['font.sans-serif']=['MicroSoft YaHei']#设置中文字体为雅黑
df=pd.read_csv('男明星人气数据.csv', index_col ='date')
bcr.bar_chart_race(df,filename='动态条形图-改变排序.mp4',
sort='asc'#升序,默认为降序
title='中国最娱乐的男明星人气排行榜(数据源自123粉丝网)')
4.5 设置柱状图条数
import bar_chart_race as bcr
import pandas as pd
from pylab import * #设置显示中文
mpl.rcParams['font.sans-serif']=['MicroSoft YaHei']#设置中文字体为雅黑
df=pd.read_csv('男明星人气数据.csv', index_col ='date')
bcr.bar_chart_race(df,filename='动态条形图-设置柱状条数.mp4',
n_bars=10, #这里本人取10,可以视情况而定
title='中国最娱乐的男明星人气排行榜(数据源自123粉丝网)')
4.6 固定轴的最大值
import bar_chart_race as bcr
import pandas as pd
from pylab import * #设置显示中文
mpl.rcParams['font.sans-serif']=['MicroSoft YaHei']#设置中文字体为雅黑
df=pd.read_csv('男明星人气数据.csv', index_col ='date')
bcr.bar_chart_race(df,filename='动态条形图-设置最大值.mp4',
fixed_max=True,
title='中国最娱乐的男明星人气排行榜(数据源自123粉丝网)')
4.7 设置帧数
#默认情况下,帧数为10,我们可以将这个值改大,使图像更流畅;当然也可以改小;
import bar_chart_race as bcr
import pandas as pd
from pylab import * #设置显示中文
mpl.rcParams['font.sans-serif']=['MicroSoft YaHei']#设置中文字体为雅黑
df=pd.read_csv('男明星人气数据.csv', index_col ='date')
bcr.bar_chart_race(df,filename='动态条形图-设置最大值.mp4',
steps_per_period=24, #设置帧数
title='中国最娱乐的男明星人气排行榜(数据源自123粉丝网)')
4.8 设置步长与停留时间
#
import bar_chart_race as bcr
import pandas as pd
from pylab import * #设置显示中文
mpl.rcParams['font.sans-serif']=['MicroSoft YaHei']#设置中文字体为雅黑
df=pd.read_csv('男明星人气数据.csv', index_col ='date')
bcr.bar_chart_race(df,filename='动态条形图-设置步长与停留时间.mp4',
period_length=2000, #设置步长与停留时间,可以调节数值变化速度
title='中国最娱乐的男明星人气排行榜(数据源自123粉丝网)')
4.9 条形图颜色不重复
#
import bar_chart_race as bcr
import pandas as pd
from pylab import * #设置显示中文
mpl.rcParams['font.sans-serif']=['MicroSoft YaHei']#设置中文字体为雅黑
df=pd.read_csv('男明星人气数据.csv', index_col ='date')
bcr.bar_chart_race(df,filename='动态条形图-条形颜色不重复.mp4',
period_length=2000, #设置步长与停留时间,可以调节数值变化速度
filter_column_colors=True, #条形颜色不重复
title='中国最娱乐的男明星人气排行榜(数据源自123粉丝网)')
二、 报错情况举例和解决方法
1. AttributeError: module ‘sip‘ has no attribute ‘setapi‘
解决办法:
最后发现这个报错的原因是 matplotlib 库的版本太高,我报错的版本是 3.3.2,将其降级到 3.3.0 就没有问题了;
先卸载:pip uninstall matplotlib
再安装:pip install matplotlib==3.3.0
问题解决!!
2. IndexError: list index out of range
解决办法: 下载 :https://imagemagick.org/script/download.php
处的软件,安装即可,但是这个网址下载比较慢; 下载安装,记得在安装时要勾选这两项;
根据系统选择下载版本,我选择的是Windows。
问题解决!!
升序排序中国_干货满满!6行python代码挑战展示2020下半年中国最娱乐的人气男明星人气排行榜top10!...相关推荐
- python30行代码_仅利用30行Python代码来展示X算法
假如你对数独解法感兴趣,你可能听说过精确覆盖问题.给定全集 X 和 X 的子集的集合 Y ,存在一个 Y 的子集 Y*,使得 Y* 构成 X 的一种分割. 这儿有个Python写的例子. X = {1 ...
- bert获得词向量_只需几行 Python 代码,即可用 BERT 玩转词嵌入!
作者 | Anirudh_S 译者 | Sambodhi 编辑 | 张之栋 AI 前线导读: 在自然语言处理领域中,诞生于 2018 年末的 BERT 非常的"火热".强悍如 BE ...
- python9行代码_如何用9行Python代码编写一个简易神经网络
原标题:如何用9行Python代码编写一个简易神经网络 Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发. 学习人工智能时,我给自己定了一个目标--用Pyth ...
- python模拟别人说话的声音_如何用100行Python代码做出魔性声控游戏“八分音符酱”...
最近几天,一款魔性的小游戏在微博上刷屏了,各大平台的主播也纷纷如感染病毒一样直播自己怎么玩这个游戏(被游戏玩). 这个游戏叫做<不要停!八分音符酱♪>.它是一款来自岛国的恶搞游戏,主角是一 ...
- 实战干货!50行Python代码一键整理桌面!
大家好,我是菜鸟哥! 我的老同学小马忙于找工作,整天被各种照片信息,和面试笔试资料搞的焦头烂额,很多文件来不及处理,全部都堆放在了一起,久而久之,就造成了桌面非常的混乱,如下图所示: 乱糟糟的桌面,让 ...
- python如何读取公共盘的文档_如何使用 Sphinx 给 Python 代码写文档 | Linux 中国
最好将文档作为开发过程的一部分.Sphinx 加上 Tox,让文档可以轻松书写,并且外观漂亮.-- Moshe Zadka Python 代码可以在源码中包含文档.这种方式默认依靠 docstring ...
- 上海python招聘微信群_如何用20行Python代码打造一个微信群聊助手?
今天要教大家一个黑科技,20行代码实现自己定制的微信群聊助手,可以用来活跃群气氛,好多群主创建完群后,拉完一群人,之后就一片寂静,有个群聊助手,就可以帮忙活跃群里气氛,通过今天在自己的微信上有一大批好 ...
- 如何制作python代码_如何使用50行Python代码制作一个计算器
(点击上方公号,可快速关注) 作者:Stories For Sad Robots 译者:开源中国社区 链接:http://www.oschina.net/translate/how-to-write- ...
- python的控件text的文本属性_只需6行Python代码就给图片加上水印——你一看就会了...
大家在做项目开发的过程中,会不会经常遇到需要处理图片却没有快速有效的工具的情况呢?比如客户需要给图片加上水印,你可能会用到PS这些高级软件去处理,这样虽然有效果但是需要相对较长的时间:作为程序猿,你一 ...
最新文章
- GridView隐藏列取值解决方案
- 钉钉 python调用审批信息_python之钉钉审批导出
- 机器学习 | 数据从哪里找?手把手教你构建数据集
- 第二节 RabbitMQ配置
- 【中继协助频谱切换】基于中继协助的频谱切换机制的MATLAB仿真
- linux C 获取日期时间
- 004-linux常用命令-权限管理命令
- php程序里的configini_PHP: 配置文件 - Manual
- https://sysdig.com/
- ArcGIS操作小技巧(四)之拓扑工具条灰色无法操作
- 使用JSP做一个小小的项目(一)
- 推荐阅读投资理财经典55本
- python制作ppt_如何利用Excel与Python制作PPT
- linux num_fds文件描述符数量限制 too many openfiles 错误
- AutoCAD 2019 for mac汉化版
- cm12 系统字体更换
- Visual Studio项目属性配置
- 零钱兑换问题c语言编程,leetcode- 零钱兑换 II(背包问题-总结-复盘)
- AntDesign 分页 警告 [`dataSource` length is less than `pagination.total` but......] 解决方法
- 用三极管制作的三色LED循环灯,灯珠颜色及排列可随意组合
热门文章
- Html百分比设宽偏差大,前端开发之移动端适配详细讲解
- 用php 用拼出一个菱形_这可是我没来过的杭州呀!远在开封的他,用一种特殊的方式,拼出一个彩色杭州...
- IOS 多层级路由导航控制器 NavigationControoller 实现路由切换
- 【OpenCV 例程200篇】82. 频率域巴特沃斯低通滤波器
- 国产自主可控的代码自动生成工具SkyEye
- 计算机应用技木就业前京,计算机专业毕业的研究生在京就业情况及启示.doc
- excel在线_功能强大的纯前端 Excel 在线表格: Luckysheet
- matlab fbb,[求助]请教如何将modelsim仿真的输出结果导入到matlab中分析
- python arcgis批量绘图_ARCGIS中Python实现批量裁剪
- pythonjavascript一起开发_Python开发【第十一篇】:JavaScript