python matplotlib库绘制条形图练习题


Posted in Python onAugust 10, 2019

练习一:假设你获取到了2017年内地电影票房前20的电影(列表a)和电影票房数据(列表b),那么如何更加直观的展示该数据?

a = ["战狼2","速度与激情8","功夫瑜伽","西游伏妖篇","变形金刚5:最后的骑士","摔跤吧!爸爸","加勒比海盗5:死无对证","金刚:骷髅岛","极限特工:终极回归","生化危机6:终章","乘风破浪","神偷奶爸3","智取威虎山","大闹天竺","金刚狼3:殊死一战","蜘蛛侠:英雄归来","悟空传","银河护卫队2","情圣","新木乃伊",]

b = [56.01,26.94,17.53,16.49,15.45,12.96,11.8,11.61,11.28,11.12,10.49,10.3,8.75,7.55,7.32,6.99,6.88,6.86,6.58,6.23]

from matplotlib import pyplot as plt
import matplotlib

"""绘制条形图"""
font = {'family': 'MicroSoft YaHei'}
matplotlib.rc('font', **font) # 使支持中文

x = ["战狼2","速度与激情8","功夫瑜伽","西游伏妖篇","变形金刚5:最后的骑士","摔跤吧!爸爸","加勒比海盗5:死无对证","金刚:骷髅岛","极限特工:终极回归","生化危机6:终章","乘风破浪","神偷奶爸3","智取威虎山","大闹天竺","金刚狼3:殊死一战","蜘蛛侠:英雄归来","悟空传","银河护卫队2","情圣","新木乃伊",]

y = [56.01,26.94,17.53,16.49,15.45,12.96,11.8,11.61,11.28,11.12,10.49,10.3,8.75,7.55,7.32,6.99,6.88,6.86,6.58,6.23]

plt.figure(figsize=(20, 8), dpi=80) # 设置图形大小

# plt.bar(range(len(x)), y, width=0.3) # 绘制条形图,线条宽度
plt.barh(range(len(x)), y, height=0.3, color='orange') # 绘制横着的条形图,横着的用height控制线条宽度
# 设置字符串到x轴
plt.yticks(range(len(x)),x)

plt.grid(alpha=0.3) # 添加网格
plt.ylabel('电影名称')
plt.xlabel('票房')
plt.title('票房前20的电影')

plt.show()

效果图

python matplotlib库绘制条形图练习题

练习二:假设知道了列表a中电影分别在2017-09-14(b_14),2017-09-15(b_15),2017-09-16(b_16)三天的票房,为了展示列表中电影本身的票房以及同其它电影的数据对比情况,应该如何更加直观的呈现数据?
a = ["猩球崛起3:终极之战","敦刻尔克","蜘蛛侠:英雄归来","战狼2"]
b_16 = [15746,312,4497,319]
b_15 = [12357,156,2045,168]
b_14 = [2358,399,2358,362]

from matplotlib import pyplot as plt
import matplotlib

font = {'family': 'MicroSoft YaHei'}
matplotlib.rc('font', **font) # 使支持中文

a = ["猩球崛起3:终极之战","敦刻尔克","蜘蛛侠:英雄归来","战狼2"]
b_16 = [15746,312,4497,319]
b_15 = [12357,156,2045,168]
b_14 = [2358,399,2358,362]

bar_width = 0.2 # 绘制多个条形图,这里不能大于0.3
# 让后两个条形,向后移动一个bar_width
x_14 = list(range(len(a)))
x_15 = [i+bar_width for i in x_14]
x_16 = [i+2*bar_width for i in x_14]

plt.figure(figsize=(20, 8), dpi=80) # 设置图形大小
plt.xticks(x_15, a) # 设置x轴刻度

plt.bar(range(len(a)), b_14, width=bar_width, label='9月14日')
plt.bar(x_15, b_15, width=bar_width, label='9月15日')
plt.bar(x_16, b_16, width=bar_width, label='9月16日')

plt.legend() # 设置图例
plt.xlabel('电影名称')
plt.ylabel('票房/万')
plt.title('对比票房')
plt.savefig('./02.png')
plt.show()

效果图

python matplotlib库绘制条形图练习题

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python获取Linux系统的各种信息
Jul 10 Python
Python线程详解
Jun 24 Python
python数据类型_元组、字典常用操作方法(介绍)
May 30 Python
Sanic框架应用部署方法详解
Jul 18 Python
Python访问MongoDB,并且转换成Dataframe的方法
Oct 15 Python
django celery redis使用具体实践
Apr 08 Python
python挖矿算力测试程序详解
Jul 03 Python
浅谈Python 递归算法指归
Aug 22 Python
python 实现绘制整齐的表格
Nov 18 Python
Python可视化学习之seaborn调色盘
Feb 24 Python
pycharm安装深度学习pytorch的d2l包失败问题解决
Mar 25 Python
pandas中pd.groupby()的用法详解
Jun 16 Python
Python OpenCV实现鼠标画框效果
Aug 19 #Python
python opencv鼠标事件实现画框圈定目标获取坐标信息
Apr 18 #Python
python点击鼠标获取坐标(Graphics)
Aug 10 #Python
python matplotlib库直方图绘制详解
Aug 10 #Python
python字典的遍历3种方法详解
Aug 10 #Python
python命名空间(namespace)简单介绍
Aug 10 #Python
简单介绍python封装的基本知识
Aug 10 #Python
You might like
提问的智慧(2)
2006/10/09 PHP
火车头采集器3.0采集图文教程
2007/03/17 PHP
PHP巧妙利用位运算实现网站权限管理的方法
2017/03/12 PHP
Javascript继承机制的设计思想分享
2011/08/28 Javascript
javascript检测页面是否缩放的小例子
2013/05/16 Javascript
使用Jquery实现点击文字后变成文本框且可修改
2013/09/21 Javascript
动态加载JS文件的三种方法
2013/11/08 Javascript
JS 仿腾讯发表微博的效果代码
2013/12/25 Javascript
60个很实用的jQuery代码开发技巧收集
2014/12/15 Javascript
javascript实现很浪漫的气泡冒出特效
2020/09/05 Javascript
基于JavaScript实现高德地图和百度地图提取行政区边界经纬度坐标
2016/01/22 Javascript
Google 地图控件集详解及实例代码
2016/08/06 Javascript
jQuery中的AjaxSubmit使用讲解
2016/09/25 Javascript
Bootstrap源码解读标签、徽章、缩略图和警示框(8)
2016/12/26 Javascript
easy ui datagrid 从编辑框中获取值的方法
2017/02/22 Javascript
如何理解jQuery中的ajaxSubmit方法
2017/03/13 Javascript
js手机号4位显示空格,银行卡每4位显示空格效果
2017/03/23 Javascript
seajs模块压缩问题与解决方法实例分析
2017/10/10 Javascript
深入学习JavaScript 高阶函数
2019/06/11 Javascript
微信小程序调用天气接口并且渲染在页面过程详解
2019/06/24 Javascript
python中sleep函数用法实例分析
2015/04/29 Python
Python协程的用法和例子详解
2017/09/09 Python
Python3中类、模块、错误与异常、文件的简易教程
2017/11/20 Python
Python实现的随机森林算法与简单总结
2018/01/30 Python
Python基于datetime或time模块分别获取当前时间戳的方法实例
2019/02/19 Python
pandas的连接函数concat()函数的具体使用方法
2019/07/09 Python
Python爬虫实现的根据分类爬取豆瓣电影信息功能示例
2019/09/15 Python
jenkins+python自动化测试持续集成教程
2020/05/12 Python
HTML5 video视频字幕的使用和制作方法
2018/05/03 HTML / CSS
Html5中localStorage存储JSON数据并读取JSON数据的实现方法
2017/02/13 HTML / CSS
HTML5拖放API实现拖放排序的实例代码
2017/05/11 HTML / CSS
维德科技C#面试题笔试题
2015/12/09 面试题
总经理职责
2013/12/22 职场文书
网站美工岗位职责
2014/04/02 职场文书
《正面管教》读后有感:和善而坚定的旅程
2019/12/19 职场文书
Vue+TypeScript中处理computed方式
2022/04/02 Vue.js