Matplotlib基本图形之条形图

Posted keys819

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Matplotlib基本图形之条形图相关的知识,希望对你有一定的参考价值。

Matplotlib基本图形之条形图

条形图特点:

以长方形的长度为变量的统计图表
用来比较多个数据分类的数据大小
通常用于较小的数据集分析
例如不同季度的销量,不同国家的人口

示例代码:


import os
import time
import numpy as np
import matplotlib.pyplot as plt

basedir = os.path.dirname(os.path.abspath(__file__))
resultdir = os.path.join(basedir, ‘result‘)
class Create_bar(object):

    def __init__(self,data,dst,name=‘‘,title=Title,color=r,alpha=1,width=0.8):
        ‘‘‘

        :param data: x轴使用的数据,一般为列表
        :param dst: 存放生成图片的文件夹路径
        :param name: 图片的名称,默认为当前时间戳
        :param title: 图片的标题,默认为Title
        :param color: 条形图的颜色,默认为红色
        :param alpha: 点的透明度,默认为1,即不透明
        :param width: 条形图的宽度,默认为0.8
        ‘‘‘
        self.x = data
        self.dst = dst
        self.name = name if name else str(int(time.time()))
        self.title = title
        self.color = color
        self.alpha = alpha
        self.width = width

    def drew(self):
        plt.bar(
            color = self.color,
            alpha = self.alpha,
            left = np.arange(len(N)),
            height = self.x,
            width=self.width,

        )
        plt.title(self.title)
        picname = self.name+.jpg
        picdir = os.path.join(self.dst, picname)
        plt.savefig(picdir)

实例化一个对象:

N = [20,60,88,76,54,16]
PIC = Create_bar(N,resultdir,color=blue)
PIC.drew()

运行结果如下:

技术分享图片

绘制水平条形图:

示例代码:

import os
import time
import numpy as np
import matplotlib.pyplot as plt

basedir = os.path.dirname(os.path.abspath(__file__))
resultdir = os.path.join(basedir, result)

num = 5
y = [20,60,88,76,54]
index = np.arange(num)
plt.barh(left=0,bottom=index,width=y)

plt.savefig(os.path.join(resultdir,‘1.png))

 

 技术分享图片

 

 相关补充:

plt.title(title)    #给图片添加标题
plt.xlabel(x_label) #给x轴添加轴名
plt.ylabel(y_label) #给y轴添加轴名

 














以上是关于Matplotlib基本图形之条形图的主要内容,如果未能解决你的问题,请参考以下文章

数据分析之matplotlib篇

数据分析之matplotlib篇

python绘图之matplotlib

Matplotlib基本图形之饼状图

matplotlib可视化之如何给图形添加数据标签?

Matplotlib和Seaborn之饼图