练习一:假设你获取到了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()

效果图

练习二:假设知道了列表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绘制条形图-python matplotlib库绘制条形图练习题相关推荐

  1. python的matplotlib库绘制条形图、散点图、饼图、折线图

    python的matplotlib库绘制条形图.散点图.饼图.折线图 当我们学会了爬虫,抓取到了一些数据,接下来就是做数据分析了.本文章介绍绘制图形的基本代码. 打开cmd用pip 安装,若输入pip ...

  2. Python中使用random随机函数与Matplotlib库绘制随机漫步图

    Python中使用random随机函数与Matplotlib库绘制随机漫步图 一.概述 随机现象在我们的生活中并不少见,我们常见的一次抛硬币的正反面,股票的走势等等,都是随机事件.这些不确定性事件给我 ...

  3. Python学习-Matplotlib库绘制简单点阵图、线型图操作

    Python学习-Matplotlib库绘制简单散点图图和线型图.标签设置以及刻度线设置操作 目录 1.Matplotlib绘图细节的简单理解 2.绘制点图.线型图 3.给图表设置复杂标注 4.移动刻 ...

  4. python:将遥感数据使用matplotlib库绘制成图片

    作者:CSDN @ _养乐多_ 本文将介绍使用matplotlib库绘制遥感数据成图片的代码. 文章目录 一.示例代码 二.更换颜色条 三.自定义颜色条 四.分段离散颜色设置 一.示例代码 要加载本地 ...

  5. Python机器学习基础之Matplotlib库的使用

    声明:代码的运行环境为Python3.Python3与Python2在一些细节上会有所不同,希望广大读者注意.本博客以代码为主,代码中会有详细的注释.相关文章将会发布在我的个人博客专栏<Pyth ...

  6. python画图三维-Python三维绘图之Matplotlib库的使用方法

    前言 在遇到三维数据时,三维图像能给我们对数据带来更加深入地理解.python的matplotlib库就包含了丰富的三维绘图工具. 1.创建三维坐标轴对象Axes3D 创建Axes3D主要有两种方式, ...

  7. python怎么画条形图-用Matplotlib如何绘制条形图、直方图和散点图

    Matplotlib是一个Python 2D绘图库,它可以在各种平台上以各种硬拷贝格式和交互式环境生成出具有出版品质的图形. 上一篇我们讲解到Matplotlib 中的图例,标题和标签介绍,今天我们开 ...

  8. python画条形图-用Matplotlib如何绘制条形图、直方图和散点图

    Matplotlib是一个Python 2D绘图库,它可以在各种平台上以各种硬拷贝格式和交互式环境生成出具有出版品质的图形. 上一篇我们讲解到Matplotlib 中的图例,标题和标签介绍,今天我们开 ...

  9. 使用Python matplotlib库绘制漏斗图

    pyecharts pyecharts有漏斗图的模板(点击链接),套用即可. 代码 from pyecharts import options as opts from pyecharts.chart ...

  10. 【matplotlib库】利用matplotlib库绘制正余弦函数曲线的python程序,标注X、Y轴及标题|CSDN创作打卡

    使用python中的第三方库matplotlib绘制正余弦函数图形,并标注x,y轴以及标题等 ,绘制方法与matlab类似,可以说这里的matplotlib库便是Python中的matlab 程序代码 ...

最新文章

  1. 【深度学习基础】经典卷积神经网络
  2. R语言pretty函数生成等间距的数值向量实战
  3. 分区文件http://wenku.baidu.com/view/d839d1868762caaedd33d4b7.html
  4. Yii 框架里数据库操作详解-[增加、查询、更新、删除的方法](转)
  5. C++总结笔记(二)——指针
  6. python测试开发实战_《python测试开发实战》基于pytest基础部分实例1-Hello
  7. 论文浅尝 | 弱监督关系抽取的深度残差学习方法
  8. 嵌入式Linux初始化硬件RTC,嵌入式Linux系统中的快速启动技术研究
  9. 学习python有哪些优势
  10. oracle11g设置开机自启动,oracle11g在linux系统下开机自启动设置
  11. 关于官方Reachability Demo理解
  12. java 生成 流程图_几行代码生成流程图
  13. 2013年全国大学生电子设计竞赛C题-旋转倒立摆
  14. 我的世界java1.16.1怎么弄材质包_我的世界1.16.1透明矿石材质包
  15. somachineV4.1的注册
  16. 个性化网站建设的一般流程
  17. 如何拟合幂率分布的幂率
  18. Unity 图片字体制作
  19. office2016与visio2016冲突的解决方法
  20. iTutorGroup英语实用篇:出国旅游常用英语对话送你

热门文章

  1. 甲骨文全球大会•2010•北京议程
  2. java jprofile安装与使用
  3. Python学习笔记(二)
  4. 软件工程:需求分析的20条法则
  5. enum2str做为queryValue时的问题
  6. linux启动spark命令,在linux上安装spark
  7. python画三维几何图-Python下opencv使用笔记(二)(简单几何图像绘制)
  8. python使用界面-python 可视化界面
  9. python开发安卓程序-如何使用python开发android应用
  10. python爬虫用途-Python爬虫入门知识:解析数据篇