python3使用matplotlib绘制条形图

 更新时间:2020年03月25日 10:35:07   作者:向阳的野草  
这篇文章主要为大家详细介绍了python3使用matplotlib绘制条形图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了python3使用matplotlib绘制条形图的具体代码,供大家参考,具体内容如下

绘制竖状条形图

代码

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", "速度与激情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]
plt.figure(figsize=(15,7))
# 绘制条形图
plt.bar(range(len(a)),b,width=0.3)
# 对应x轴与字符串
plt.xticks(range(len(a)),a,fontproperties=my_font,rotation=90)
plt.savefig("./bar1.png")
plt.show()

效果图

绘制横状条形图

代码

# 绘制横着的条形图
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", "速度与激情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]
plt.figure(figsize=(15, 7))
# 绘制条形图
plt.barh(range(len(a)), b, height=0.3,color='orange')
# 对应x轴与字符串
plt.yticks(range(len(a)), a, fontproperties=my_font, rotation=0)
# 添加网格 alpha参数是设置网格的透明度的
plt.grid(alpha=0.3)
# 保存图片
plt.savefig("./bar1.png")
plt.show()

效果图

需要注意的是横着的和竖着的条形图的区别在与横着的使用的是barh()方法,同时要注意它传参数的顺序是:

def barh(y, width, height=0.8, left=None, *, align='center', **kwargs):

绘制多次条形图

代码

from matplotlib import pyplot as plt
from matplotlib import font_manager

myfont = font_manager.FontProperties(fname="/usr/share/fonts/truetype/arphic/ukai.ttc")
a = ["猩球崛起3:终极之战","敦刻尔克","蜘蛛侠:英雄归来","战狼2"]
b_16 = [15746,312,4497,319]
b_15 = [12357,156,2045,168]
b_14 = [2358,399,2358,362]

bar_width = 0.25
x_14 = list(range(len(a)))
x_15 = list(i+bar_width for i in x_14)
x_16 = list(i+bar_width for i in x_15)
# 设置图形大小
plt.figure(figsize=(20,8),dpi=80)
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(prop=myfont)
# 设置x轴刻度
plt.xticks(x_15,a,fontproperties=myfont)
plt.savefig("./mutiy.png")
plt.show()

效果图

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

相关文章

  • Python openpyxl模块实现excel读写操作

    Python openpyxl模块实现excel读写操作

    这篇文章主要介绍了Python openpyxl模块实现excel读写操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • Python实现的读取电脑硬件信息功能示例

    Python实现的读取电脑硬件信息功能示例

    这篇文章主要介绍了Python实现的读取电脑硬件信息功能,结合实例形式分析了Python基于wmi库读取电脑CPU、磁盘、网络、进程等硬件信息相关操作技巧,需要的朋友可以参考下
    2018-05-05
  • Python解析json之ValueError: Expecting property name enclosed in double quotes: line 1 column 2(char 1)

    Python解析json之ValueError: Expecting property name enclosed in

    这篇文章主要给大家介绍了关于Python解析json报错:ValueError: Expecting property name enclosed in double quotes: line 1 column 2(char 1)的解决方法,文中介绍的非常详细,需要的朋友们可以参考借鉴,下面来一起看看吧。
    2017-07-07
  • python获取各操作系统硬件信息的方法

    python获取各操作系统硬件信息的方法

    这篇文章主要介绍了python获取各操作系统硬件信息的方法,实例分析了Python在windows、Linux及Mac等操作系统上获取CPU信息的相关技巧,需要的朋友可以参考下
    2015-06-06
  • Python入门教程(三十五)Python中文件的打开

    Python入门教程(三十五)Python中文件的打开

    这篇文章主要介绍了Python入门教程(三十五)Python中文件的打开,在Python中文件的读取主要是用open()函数,那么open()函数有哪些方法呢,今天我们就来看一看,需要的朋友可以参考下
    2023-05-05
  • Python根据区号生成手机号码的方法

    Python根据区号生成手机号码的方法

    这篇文章主要介绍了Python根据区号生成手机号码的方法,涉及Python随机数与字符串的相关操作技巧,需要的朋友可以参考下
    2015-07-07
  • 通过Python实现自动填写调查问卷

    通过Python实现自动填写调查问卷

    这篇文章主要介绍了通过Python实现自动填写调查问卷的相关资料,需要的朋友可以参考下
    2017-09-09
  • python 装饰器的基本使用

    python 装饰器的基本使用

    这篇文章主要介绍了python 装饰器的基本使用,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2021-01-01
  • pip如何用pipdeptree查看包依赖

    pip如何用pipdeptree查看包依赖

    这篇文章主要介绍了pip如何用pipdeptree查看包依赖问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • pandas 选取行和列数据的方法详解

    pandas 选取行和列数据的方法详解

    这篇文章主要介绍了pandas 选取行和列数据的方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08

最新评论