Python使用bar绘制堆积/带误差棒柱形图的实现

本博文源于《python数据可视化》(黑马程序员编著)。先讲解bar参数如何使用,然后分别演示堆积柱形图和带误差柱形图画法。

bar参数

bar(x,height,width=0.8,bottom=None,align='center',data=None,
tick_label=None,xerr=None,yerr=None,error_kw=None,**kwargs)

该函数常用参数如下:

  • x 表示x的坐标值
  • height:表示柱形的高度
  • width:表示柱形的宽度,默认为0.8
  • bottom:表示柱形底部的y坐标值,默认为0
  • align:表示柱形的对齐方式,有'center'和'edge'两个取值,其中'center'表示将柱形与刻度线居中对齐,'edge'表示将柱形的左边与刻度线对齐
  • tick_label:表示柱形对应的刻度标签
  • xerr,yerr:若未设为None,则需要为柱形图添加水平/垂直误差棒
  • error_kw:表示误差棒的属性字典,字典的键对应errorbar()函数的关键字参数.

示例:堆积柱形图演示

import matplotlib.pyplot as plt
import numpy as np
x = np.arange(5)
y1 = np.array([10,8,7,11,13])
y2 = np.array([9,6,5,10,12])
plt.bar(x,y1,tick_label=['a','b','c','d','e'],width=bar_width)
plt.bar(x,y2,bottom=y1,width=bar_width)
plt.show()

示例:带有误差棒的堆积图

    import matplotlib.pyplot as plt
    import numpy as np

    x = np.arange(5)
    y1 = np.array([10, 8, 7, 11, 13])
    error = [2, 1, 2.5, 2, 1.5]
    bar_width = 0.3
    # 绘制带有误差棒的柱形图
    plt.bar(x, y1, tick_label=['a', 'b', 'c', 'd', 'e'], width=bar_width)
    plt.bar(x, y1, bottom=y1, width=bar_width, yerr=error)
    plt.show()

到此这篇关于Python使用bar绘制堆积/带误差棒柱形图的实现的文章就介绍到这了,更多相关Python bar柱形图内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2021-09-15

python绘制双柱形图代码实例

图表是比干巴巴的表格更直观的表达,简洁.有力.工作中经常遇到的场景是,有一些数值需要定时的监控,比如服务器的连接数.活跃用户数.点击某个按钮的人数,并且通过邮件或者网页展示出来.当我们想关注比数值本身更多的信息(像数值的变化.对比或异常),图表就非常有用了.把数值转化为图片要依赖第三方库的帮忙,在Python之中最好的图表库叫matplotlib.(一直觉得,Python最大的优势就是丰富的第三方库,让你能轻易实现各种需求) matplotlib,顾名思义就是提供了一整套和matlab相似的AP

通过python读取txt文件和绘制柱形图的实现代码

目的 临床数据的记录时间和对应标签(逗号后面的数字)记录在txt文件里,要把标签转换为3类标签,并且计算出每个标签的分别持续时间,然后绘制成柱形图方便查阅. 小难点分析: (1)txt的切割读取对应内容 (2)时间差计算 txt文件如图: 使用效果 首先将原始txt转换为  左列新标签 右列持续时间 绘制为柱形图 为了直观,每次只最多显示 2个小时,同时横坐标还是按照临床的记录时间顺序. 代码实现 # -*- coding: utf-8 -*- from datetime import date

Python绘图之柱形图绘制详解

前言 用python编程绘图,其实非常简单.中学生.大学生.研究生都能通过这10篇教程从入门到精通!快速绘制几种简单的柱状图. 1垂直柱图(普通柱图) 绘制普通柱图的python代码如下: (左右滑动可以查看全部代码) # -*- coding:utf-8 -*- # 申明编码格式为utf-8 import matplotlib as mpl import matplotlib.pyplot as plt mpl.rcParams["font.sans-serif"]=["S

如何用Python绘制3D柱形图

本文主要讲解如何使用python绘制三维的柱形图,如下图 源代码如下: import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D #构造需要显示的值 X=np.arange(0, 5, step=1)#X轴的坐标 Y=np.arange(0, 9, step=1)#Y轴的坐标 #设置每一个(X,Y)坐标所对应的Z轴的值,在这边Z(X,Y)=X+Y Z=np.zeros(sh

Python绘制3d螺旋曲线图实例代码

Line plots Axes3D.plot(xs, ys, *args, **kwargs) 绘制2D或3D数据 参数 描述 xs, ys X轴,Y轴坐标定点 zs Z值,每一个点的值都是1 zdir 绘制2D集合时使用z的方向 其他的参数:plot() Python代码: import matplotlib as mpl from mpl_toolkits.mplot3d import Axes3D import numpy as np import matplotlib.pyplot as

Python绘制3D图形

3D图形在数据分析.数据建模.图形和图像处理等领域中都有着广泛的应用,下面将给大家介绍一下如何使用python进行3D图形的绘制,包括3D散点.3D表面.3D轮廓.3D直线(曲线)以及3D文字等的绘制. 准备工作: python中绘制3D图形,依旧使用常用的绘图模块matplotlib,但需要安装mpl_toolkits工具包,安装方法如下:windows命令行进入到python安装目录下的Scripts文件夹下,执行: pip install --upgrade matplotlib即可:li

matplotlib在python上绘制3D散点图实例详解

大家可以先参考官方演示文档: 效果图: ''' ============== 3D scatterplot ============== Demonstration of a basic scatterplot in 3D. ''' from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt import numpy as np def randrange(n, vmin, vmax): ''' Helper f

python+matplotlib绘制3D条形图实例代码

本文分享的实例主要实现的是Python+matplotlib绘制一个有阴影和没有阴影的3D条形图,具体如下. 首先看看演示效果: 完整代码如下: import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D # setup the figure and axes fig = plt.figure(figsize=(8, 3)) ax1 = fig.add_subplot(121

python matlibplot绘制3D图形

本文实例为大家分享了python matlibplot绘制3D图形的具体代码,供大家参考,具体内容如下 1.散点图使用scatter from mpl_toolkits.mplot3d import Axes3D import numpy as np from matplotlib import pyplot as plt # 生成3D示例数据 mu_vec1 = np.array([0,0,0]) # 均值向量 cov_mat1 = np.array([[1,0,0],[0,1,0],[0,0

python中Matplotlib实现绘制3D图的示例代码

Matplotlib 也可以绘制 3D 图像,与二维图像不同的是,绘制三维图像主要通过 mplot3d 模块实现.但是,使用 Matplotlib 绘制三维图像实际上是在二维画布上展示,所以一般绘制三维图像时,同样需要载入 pyplot 模块. mplot3d 模块下主要包含 4 个大类,分别是: mpl_toolkits.mplot3d.axes3d() mpl_toolkits.mplot3d.axis3d() mpl_toolkits.mplot3d.art3d() mpl_toolkit

python绘制双Y轴折线图以及单Y轴双变量柱状图的实例

近来实验室的师姐要发论文,由于论文交稿时间临近,有一些杂活儿需要处理,作为实验室资历最浅的一批,我这个实习生也就责无旁贷地帮忙当个下手.今天师姐派了一个小活,具体要求是: 给一些训练模型的迭代次数,训练精度的数据,让我做成图表形式展示出来,一方面帮助检查模型训练时的不足,另一方面来看样本数目和预测精度之间的联系,数据具体格式如下: Iteration 1500 label train test right acc 12 143 24 24 1.0 160 92 16 15 0.9375 100