在matplotlib中,bar命令用于绘制柱状图,基本用法如下在matplotlib中,bar命令用于绘制柱状图,基本用法如下在matplotlib中,bar命令用于绘制柱状图,基本用法如下在matplotlib中,bar命令用于绘制柱状图,基本用法如下在matplotlib中,bar命令用于绘制柱状图,基本用法如下

在matplotlib中,bar命令用于绘制柱状图,基本用法如下

plt.bar(x = [1, 2, 3, 4], height = [4, 2, 3, 1])

输出结果如下

matplotlib基础绘图命令之bar的使用方法

参数x的值作为x轴坐标,height的值作为y轴坐标。除了这两个基本参数外,bar命令常用的还有以下参数

1. width, 柱子的宽度,即在x轴上的长度,默认是0.8

2. color, 柱子的填充色

3. edgecolor, 柱子边框的颜色,默认为None

4. linewidth, 柱子边框的宽度,默认为0,表示没有边框

5. yerr,指定误差值的大小, 用于在柱子上添加误差线

6. ecolor, 表示errorbar color, 误差线的颜色

7. bottom, 柱子底部的baseline, 默认为0

各个参数设置的示例如下

plt.bar(x = [1, 2, 3, 4], height = [4, 2, 3, 1], width = 0.8, edgecolor = 'black', linewidth = 2, align = 'center', color = 'g', yerr = 0.5, ecolor = 'r')

输出结果如下

matplotlib基础绘图命令之bar的使用方法

柱状图还可以有很多的变种,通过barh命令,可以绘制水平方向的柱状图,用法如下

plt.barh(y = [1, 2, 3, 4], width = [4, 2, 3, 1])

输出结果如下

matplotlib基础绘图命令之bar的使用方法

在单一柱状图的基础上,通过叠加可以实现以下两种柱状图

1. 堆积柱状图

代码如下

plt.bar(x = [1, 2, 3, 4], height = [4, 3, 2, 1], label = 'sampleA')
plt.bar(x = [1, 2, 3, 4], height = [4, 3, 2, 1], bottom = [4, 3, 2, 1], label = 'sampleB')
plt.legend()

核心是通过将第一组柱子的高度作为第二组柱子的底部,即bottom参数,从而实现堆积的效果,输出结果如下

matplotlib基础绘图命令之bar的使用方法

2. 分组柱状图

代码如下

width = 0.4
plt.bar(x = np.array([1, 2, 3, 4]) - width / 2, height = [4, 3, 2, 1], width = width, label = 'sampleA')
plt.bar(x = np.array([1, 2, 3, 4]) + width / 2, height = [1, 2, 3, 4], width = width, label = 'sampleB')
plt.legend()

核心是根据宽度的值,手动计算柱子的中心坐标,然后自然叠加就可以形成水平展开的分组柱状图,输出结果如下

matplotlib基础绘图命令之bar的使用方法

matplotlib并不像R包ggplot2那样,提供了一步到位的接口,而是通过叠加组合最大程度的保留了灵活性,通过一行行绘图代码的叠加来实现复杂图表。

华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?