Matplotlib的概念这里就不多介绍了,关于绘图库Matplotlib的安装方法:点击这里

小编之前也和大家分享过python使用matplotlib实现的折线图和制饼图效果,感兴趣的朋友们也可以点击查看,下面来看看python使用matplotlib绘制柱状图的方法吧,具体如下:

1. 基本的柱状图

import matplotlib.pyplot as plt

data = [5, 20, 15, 25, 10]

plt.bar(range(len(data)), data)

plt.show()

plt.bar函数签名为:

bar(left, height, width=0.8, bottom=None, **kwargs)

事实上,left,height,width,bottom这四个参数确定了柱体的位置和大小。默认情况下,left为柱体的居中位置(可以通过align参数来改变left值的含义),即:

(left - width / 2, bottom)为左下角位置

(left + width / 2, bottom + height)为右上角位置

例如:

import matplotlib.pyplot as plt

data = [5, 20, 15, 25, 10]

plt.bar([0.3, 1.7, 4, 6, 7], data, width=0.6, bottom=[10, 0, 5, 0, 5])

plt.show()

2. 设置柱体样式

(1)颜色

通过facecolor(或fc)关键字参数可以设置柱体颜色,例如:

import matplotlib.pyplot as plt

data = [5, 20, 15, 25, 10]

plt.bar(range(len(data)), data, fc='g')

plt.show()

通过color关键字参数 可以一次性设置多个颜色,例如:

import matplotlib.pyplot as plt

data = [5, 20, 15, 25, 10]

plt.bar(range(len(data)), data, color='rgb') # or `color=['r', 'g', 'b']`

plt.show()

(2)描边

相关的关键字参数为:

edgecolor 或 ec

linestyle 或 ls

linewidth 或 lw

例如:

import matplotlib.pyplot as plt

data = [5, 20, 15, 25, 10]

plt.bar(range(len(data)), data, ec='r', ls='--', lw=2)

plt.show()

(3)填充

hatch关键字可用来设置填充样式,可取值为:/, \, |, -, +, x, o, O, ., *。例如:

import matplotlib.pyplot as plt

data = [5, 20, 15, 25, 10]

plt.bar(range(len(data)), data, ec='k', lw=1, hatch='o')

plt.show()

3. 设置tick label

import matplotlib.pyplot as plt

data = [5, 20, 15, 25, 10]

labels = ['Tom', 'Dick', 'Harry', 'Slim', 'Jim']

plt.bar(range(len(data)), data, tick_label=labels)

plt.show()

4. 堆叠柱状图

通过bottom参数,可以绘制堆叠柱状图。例如:

import numpy as np

import matplotlib.pyplot as plt

size = 5

x = np.arange(size)

a = np.random.random(size)

b = np.random.random(size)

plt.bar(x, a, label='a')

plt.bar(x, b, bottom=a, label='b')

plt.legend()

plt.show()

5. 并列柱状图

绘制并列柱状图与堆叠柱状图类似,都是绘制多组柱体,只需要控制好每组柱体的位置和大小即可。例如:

import numpy as np

import matplotlib.pyplot as plt

size = 5

x = np.arange(size)

a = np.random.random(size)

b = np.random.random(size)

c = np.random.random(size)

total_width, n = 0.8, 3

width = total_width / n

x = x - (total_width - width) / 2

plt.bar(x, a, width=width, label='a')

plt.bar(x + width, b, width=width, label='b')

plt.bar(x + 2 * width, c, width=width, label='c')

plt.legend()

plt.show()

6. 条形图

使用barh方法绘制条形图。例如:

import matplotlib.pyplot as plt

data = [5, 20, 15, 25, 10]

plt.barh(range(len(data)), data)

plt.show()

plt.barh方法的签名为:

barh(bottom, width, height=0.8, left=None, **kwargs)

可以看到与plt.bar方法类似。因此堆积条形图和并列条形图的画法与前面类似,不做赘述。

7. 正负条形图

import numpy as np

import matplotlib.pyplot as plt

a = np.array([5, 20, 15, 25, 10])

b = np.array([10, 15, 20, 15, 5])

plt.barh(range(len(a)), a)

plt.barh(range(len(b)), -b)

plt.show()

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用python能带来一定的帮助,如果有疑问大家可以留言交流。

如何在地图上画柱状图python_python使用matplotlib绘制柱状图教程相关推荐

  1. qgis在地图上画导航线_在Laravel中的航线

    qgis在地图上画导航线 For further process we need to know something about it, 为了进一步处理,我们需要了解一些有关它的信息, The rou ...

  2. ArcGIS API for JavaScript根据两个点坐标在地图上画线

    ArcGIS API for JavaScript根据两个点坐标在地图上画线 比如说a(xxxx,xxxxx),b(xxxx,xxxxx).利用这两个点画一条线 var polyline = new ...

  3. Arcgis for Android在地图上画多边形并进行边长、周长和面积的测量

    Arcgis for Android的地图操作里,放大缩小地图.图层切换.定位.测距测面等都是它的一些基本操作,封装后一般调用就是了,很简单.不过最近有了个需求,在地图上画一个多边形时候同时进行多边形 ...

  4. python比例图_python在地图上画比例的实例详解

    现在用python画图已经难不倒一直跟小编学习的小伙伴们了,甚至有的小伙伴画图比小编还要厉害.为此小编还偷偷下了一番功夫,画图这种事情,细节上的完善肯定能让图片更加好看.所以小编知道大家会画地图,但是 ...

  5. 如何在百度地图上画镂空圆 Android

    百度API提供了在地图上画圆形的类,但画出圆只能是实心圆,也就是不能实现让圆内没有颜色而圆外有颜色的镂空圆.那么我们应该实现镂空圆呢? 首先我发现API还提供一个画多边形的类.而一个镂空圆分解成两个多 ...

  6. Bing必应地图中国API - 在地图上画圆

    Bing必应地图中国API - 在地图上画圆 2011-05-24 14:49:37|  分类: Bing&Google|字号 订阅 <变形金刚2>上映4日国内票房过亿,基本上我只 ...

  7. Python Matplotlib绘制柱状图(bar和barh函数)详解

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 python免费学习资 ...

  8. python 柱状图和折线图放在一起_Python matplotlib:matplotlib绘制——柱状图和折线图的组合...

    Python matplotlib:使用matplotlib绘制--柱状图和折线图的组合. 废话不多说,直接上效果图和代码. 代码如下: #柱状图 import numpy as np import ...

  9. Python使用matplotlib绘制柱状图(bar plot)实战:水平条形图、垂直条形图、分组条形图、堆叠条形图

    Python使用matplotlib绘制柱状图(bar plot)实战:水平条形图.垂直条形图.分组条形图.堆叠条形图 目录

最新文章

  1. textContent与innerText的不同(转发)
  2. orangepi找不到GPIO的解决方法
  3. python在日常工作处理中的应用-记 Python 在实际工作中的第一次应用
  4. One more sprint? 再加一个迭代?-英文
  5. 将一个对象拆开拼接成URL
  6. php接口前端安全,前端js的ajax 调用PHP写的API接口,如何卡主安全性,防止非法调用呢?...
  7. 把数据集刷穿是什么体验?MetaQA已100%准确率
  8. html 网页整体的背景色,HTML 背景
  9. 如何获得getElementById的length这个数值?
  10. 统计学国内四门B类期刊以及统计学简史
  11. matlab 交互效应三维图,【MATLAB】使用MATLAB绘制心理学中的交互作用图
  12. android linearlayout 自动滚动,Linearlayout scrollbars=“vertical”并没有用,Linearlayout滚动的解决办法...
  13. swift 函数类型+高阶函数
  14. 2022年最新的Detectron 2 (0.6) 安装流程(联想笔记本Y9000K+Anaconda+Win 11 +RTX3070)
  15. 哔哩哔哩自动播放视频
  16. 软文营销文案写作如何用创意编制想象力“城堡”
  17. 如何查看存储过程内容
  18. 红米路由器ac2100怎样设置ipv6_红米(Redmi)路由器AC2100怎么设置
  19. JavaScript教程-setTimeout,setInterval,
  20. 为什么90后不鸟管理者,却愿意被大神虐?

热门文章

  1. 期权合约怎么看?期权合约解读
  2. 外卖平台对接笔记(美团外卖,饿了么外卖)
  3. LOD技术——定义详解及相关知识介绍
  4. 网站攻击有几种?如何进行安全防护?
  5. CentOS 系统利用 IUS 安装 python3.6
  6. 海思35xx实现GT911触摸屏功能
  7. 软件测试培训分享:哪家软件测试培训机构好?
  8. 文件二维码(FileQRCode) – 通过动态二维码无网传输文件(手机互传,手机电脑互传)
  9. catia齿轮宏程序,catia齿轮宏程序_Catia宏程序
  10. Android权限列表 中文 英文 说明