1.竖状条形图

条形图最重要的就是plt.bar()

#你可以在这里设置条形图的宽度和颜色
plt.bar(range(len(a)),b,width=0.3,color="orange")

和前面学习的折线图,散点图一样其他地方没变化

from matplotlib import pyplot as plt
from matplotlib import font_manager#设置中文
my_font=font_manager.FontProperties(fname="/usr/share/fonts/truetype/arphic/ukai.ttc")#电影数据
a=["战狼2","加勒比海盗:泯灭","蜘蛛侠: 英雄远征","穿越火线","地下城","赛尔号大电影:寻找凤凰神兽","喜洋洋与灰太狼:虎虎生威","钢铁侠3","美队3","复仇者联盟3:无限战争","天气之子"]
b=[12.02,13.02,23.54,25.89,43.90,35.67,63.43,42.21,21.46,56.32,34.62]#设置图片大小
plt.figure(figsize=(20,15),dpi=80)# 条形图代码 plt.bar()可设置条形图的宽度,颜色等属性
plt.bar(range(len(a)),b,width=0.3,color="orange")#设置刻度
plt.xticks(range(len(a)),a,fontproperties=my_font,rotation=90)#画出图像
plt.show()

附上图片效果

有些小伙伴会发现有些刻度电影名太长了,快显示不下了,我们当然可以调整图片的大小,当然还有一种办法:在代码中添加\n换行符

a=["战狼2","加勒比海盗\n:泯灭","蜘蛛侠\n: 英雄远征","穿越火线","地下城","赛尔号大电影\n:寻找凤凰神兽","喜洋洋与灰太狼\n:虎虎生威","钢铁侠3","美队3","复仇者联盟3\n:无限战争","天气之子"]

看看效果

刻度的文字就可以折叠显示了

说一下 range 和len的并用

  • 例如 :

list=[“Monday”,“Tuesday”,“Wednesday”,“Thusday”, “Friday”,“Saturday”,“Sunday”]

for i in range(len(list)):

print list[i]

  • Range函数的作用是顺次取出序列的数
  • Len函数的作用是求列表的长度(长度为7)以元素的个数
  • 两者的配合使用是顺次取出列表中的数据
----------------------------------------------------------我是分割线---------------------------------------------------------

2.横状条形图(使用较多)

关键代码及注意要点

#横着的条形图代码是plt.barh   关于设置条形的宽度,用height来设置,不是width!
plt.barh(range(len(a)),b,height=0.3,color="orange")#设置刻度 刻度设置在y轴,旋转角度不需要
plt.yticks(range(len(a)),a,fontproperties=my_font)#添加网格 网格有些属性例如 linestyle = "-.", color = "r", linewidth = "3" 等 ,我们这只用简单的透明度alpha
plt.grid(alpha=0.3)

上代码

from matplotlib import pyplot as plt
from matplotlib import font_manager#设置中文
my_font=font_manager.FontProperties(fname="/usr/share/fonts/truetype/arphic/ukai.ttc")#电影数据
a=["战狼2","加勒比海盗:泯灭","蜘蛛侠: 英雄远征","穿越火线","地下城","赛尔号大电影:寻找凤凰神兽","喜洋洋与灰太狼:虎虎生威","钢铁侠3","美队3","复仇者联盟3:无限战争","天气之子"]
b=[12.02,13.02,23.54,25.89,43.90,35.67,63.43,42.21,21.46,56.32,34.62]#设置图片大小
plt.figure(figsize=(20,8),dpi=80)# 条形图代码 plt.bar()可设置条形图的宽度,颜色等属性
plt.barh(range(len(a)),b,height=0.3,color="orange")#设置刻度 刻度设置在y轴,旋转角度不需要
plt.yticks(range(len(a)),a,fontproperties=my_font)#画出图像
plt.show()

结果

----------------------------------------------------------我是分割线---------------------------------------------------------

3.多次条形图

我们用多次条形图来表示三日中4部电影的观影人数

a=["蜘蛛侠:英雄远征","星球觉醒","复仇者联盟4","天气之子"]
b_1=[23,43,78,45]
b_2=[27,35,69,23]
b_3=[85,37,67,29]

多次条形图最重要的就是调整条形的位置,让每条条形分开

#设置条形图的位置  bar_with不要超过1
bar_with=0.2
x_1=list(range(len(a)))
x_2=[i+bar_with for i in x_1]
x_3=[i+bar_with*2 for i in x_1]

其余的部分和其他条形图一样 直接上代码

from matplotlib import pyplot as plt
from matplotlib import font_manager#设置中文
my_font=font_manager.FontProperties(fname="/usr/share/fonts/truetype/arphic/ukai.ttc")
a=["蜘蛛侠:英雄远征","星球觉醒","复仇者联盟4","天气之子"]
b_1=[23,43,78,45]
b_2=[27,35,69,23]
b_3=[85,37,67,29]#设置图片大小
plt.figure(figsize=(20,15),dpi=80)#设置条形图的位置
bar_with=0.2
x_1=list(range(len(a)))
x_2=[i+bar_with for i in x_1]
x_3=[i+bar_with*2 for i in x_1]# 条形图代码 plt.bar()可设置条形图的宽度,颜色等属性
plt.bar(x_1,b_1,width=bar_with,color="orange",label="第一日")
plt.bar(x_2,b_2,width=bar_with,color="red",label="第二日")
plt.bar(x_3,b_3,width=bar_with,color="green",label="第三日")#设置图例
plt.legend(prop=my_font)#设置刻度
plt.xticks(x_2,a,fontproperties=my_font)#画出图片
plt.show()

结果如下

这就是今天的条形图案例。下一篇是直方图!加油!

matplotlib学习之条形图相关推荐

  1. 【Python学习】matplotlib学习总结——条形图

    绘制条形图 举个例子: 任务:绘制2017年电影票房前20的条形图. 数据: x = ["战狼2","速度与激情8","功夫瑜伽",&quo ...

  2. matplotlib学习笔记 - 散点图、条形图和直方图

    Matplotlib 学习笔记 - 散点图.条形图和直方图 散点图 from matplotlib import pyplot as plt from matplotlib import font_m ...

  3. 【莫烦Python】Matplotlib学习笔记(二)

    [莫烦Python]Matplot学习笔记(一) [莫烦Python]Matplotlib学习笔记(二) 一.Bar柱状图/条形图 二.Contours等高线图 三.Image图像 四.3D图像 五. ...

  4. python使用matplotlib可视化间断条形图、使用broken_barh函数可视化间断条形图、可视化定性数据的相同指标在时间维度上的差异

    python使用matplotlib可视化间断条形图.使用broken_barh函数可视化间断条形图.可视化定性数据的相同指标在时间维度上的差异 目录 python使用matplotlib可视化间断条 ...

  5. python使用matplotlib绘制水平条形图并在条形图上添加实际数值标签实战

    python使用matplotlib绘制水平条形图并在条形图上添加实际数值标签实战 # 绘制水平条形图进行模型对比 x_labels = ["LogisticRegression" ...

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

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

  7. python绘图工具基础-matplotlib学习之基本使用

    matplotlib学习之基本使用 1.figure学习2.设置坐标轴3.Legend 图例4.Annotation 标注5.tick能见度 1.figure学习 导包 import matplotl ...

  8. Matplotlib学习---用matplotlib画箱线图(boxplot)

    箱线图通过数据的四分位数来展示数据的分布情况.例如:数据的中心位置,数据间的离散程度,是否有异常值等. 把数据从小到大进行排列并等分成四份,第一分位数(Q1),第二分位数(Q2)和第三分位数(Q3)分 ...

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

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

最新文章

  1. GANs中的明星StarGAN:使用单一模型执行多个域的图像转换,GAN之父点赞
  2. REACT map dictionary
  3. 电大2007计算机机考专科试题,中央电大2007-2008学年度第一学期期末考试计算机网络专业计算机网络试题2008年1月...
  4. Angular Component的加载触发时机
  5. MediatR 知多少 - 简书
  6. 深度模型不work?这有一份超全的Debug检查清单
  7. Go学习笔记(三)Go 语言基础语法
  8. php 获取路由器mac地址,php如何获取网卡MAC地址(支持WIN与LINUX系统)
  9. php如何每天自调用不同的ccs,Python-ccs高级选择器 盒模型
  10. 12306 被质疑过度获取用户隐私;直播答题外挂横行;阿里云辟谣称绝不做虚拟货币 | 一周业界事
  11. python qq聊天机器人_Python QQBot库的QQ聊天机器人
  12. 信息学奥赛之数学一本通 pdf_整理青少年信息奥赛
  13. Kaggle Quora-如何快速进行数据分析 #0
  14. JNA释放Memory对象分配的内存
  15. 概要设计和详细设计模板_网站模板不用设计 直接下载免费网站模板
  16. Kaggle(入门)
  17. 【游戏程序设计】三维游戏示例-战术竞技游戏Demo(二)
  18. 2023年国内所有期刊复合、综合影响因子等35指标数据库
  19. 使用IBM InfoSphere Guardium Data Redaction在保护隐私的同时共享信息
  20. testng和idea_TestNG,FEST和CDI

热门文章

  1. 抽象类:案例:猫和狗
  2. 找不到夺神之权服务器,流放之路3月21日夺神之权停服更新介绍
  3. vscode的插入的图片在浏览器中无法显示
  4. 交易ETF和杠杆基金B有哪些和股票操作上不同的,有哪些要注意的?
  5. 关于游戏社交的一些想法
  6. JavaMail登录163发送QQ邮箱
  7. 老文章,新人看!看看你以后的样子吧,是好是坏看你自己
  8. ImportError:undefined symbol: _Z27points_in_boxes_cpu_forwardN2at6TensorES0_S0_
  9. Python符号计算:微积分
  10. Object.keys()的实用优化