Pyhon数据分析20——matplotlib可视化(二)之柱状图

atplotlib绘制柱状图
柱状图(bar chart),是一种以长方形的长度为变量的表达图形的统计报告图,由一系列高度不等的纵向条纹表示数据分布的情况,用来比较两个或以上的价值(不同时间或者不同条件),只有一个变量,通常利用于较小的数据集分析。柱状图亦可横向排列,或用多维方式表达。

准备
import numpy as np
import pandas as pd
from pandas import Series, DataFrame
%matplotlib inline
import matplotlib.pyplot as plt
1
2
3
4
5
新建一个data字典。

data = [23, 45, 56, 78, 213]
1
绘图
用一句代码就可以完成最基本的绘制柱状图了。前面的参数的X轴,后面的参数Y轴。

plt.bar([1,2,3,4,5], data)
1

颜色
可以调整柱状图的颜色。

plt.bar(range(len(data)), data, color=‘red‘)
1

透明度
调整柱状图的透明度。注意:如果调整过头,就跟我下面的一样,秉承粉色的感觉了。

格网
利用grid()函数绘制格网。

plt.bar(range(len(data)), data, color=‘royalblue‘, alpha=0.7)
plt.grid(color=‘#95a5a6‘, linestyle=‘--‘, linewidth=2, axis=‘y‘, alpha=0.7)
1
2
同时,还能设置格网的颜色,形状,大小,方向和透明度。

堆积
利用bottom属性,可以设置是否堆积两个柱状图。

data1 = [23,85, 72, 43, 52]
data2 = [42, 35, 21, 16, 9]
plt.bar(range(len(data)), data1)
plt.bar(range(len(data)), data2, bottom=data1)
1
2
3
4

好玩一点的操作就是利用width属性把普通柱状图转换成并列柱状图。

data1 = [23,85, 72, 43, 52]
data2 = [42, 35, 21, 16, 9]
width =0.3
plt.bar(np.arange(len(data1)), data1, width=width)
plt.bar(np.arange(len(data2))+ width, data2, width=width)
1
2
3
4
5

利用barh()函数可以绘制横向柱状图。

刻度
利用xticks()函数可以设置柱状图 的刻度。

data = [23,85, 72, 43, 52]
plt.xticks(range(len(data)))
plt.bar(range(len(data)), data)
1
2
3

同样,可用xticks()函数也可以设置刻度的标签。

data = [23,85, 72, 43, 52]
labels = [‘A‘, ‘B‘, ‘C‘, ‘D‘, ‘E‘]
plt.xticks(range(len(data)),labels)
plt.bar(range(len(data)), data)
1
2
3
4

注意:不能单独设置刻度的标签,但是可以单独设置刻度。
还有,可以通过yticks()函数修改Y轴的刻度。

坐标轴标签
可以通过xlabel()和ylabel()函数可以设置X轴和Y轴的标签。

data = [23,85, 72, 43, 52]
labels = [‘A‘, ‘B‘, ‘C‘, ‘D‘, ‘E‘]
plt.xticks(range(len(data)), labels)
plt.xlabel(‘Class‘)
plt.ylabel(‘Amounts‘)
plt.bar(range(len(data)), data)
1
2
3
4
5
6

标题
通过title()函数设置坐标轴的标题。

data = [23,85, 72, 43, 52]
labels = [‘A‘, ‘B‘, ‘C‘, ‘D‘, ‘E‘]
plt.xticks(range(len(data)), labels)
plt.xlabel(‘Class‘)
plt.ylabel(‘Amounts‘)
plt.title(‘I am title‘)
plt.bar(range(len(data)), data)
1
2
3
4
5
6
7

图例
在bar()函数里面传入label属性可以设置 图例的名称,通过legend()函数可以绘制图例。

data1 = [23,85, 72, 43, 52]
data2 = [42, 35, 21, 16, 9]
width =0.3
plt.bar(np.arange(len(data1)), data1, width=width, label=‘one‘)
plt.bar(np.arange(len(data2))+ width, data2, width=width, label=‘two‘)
plt.legend()
---------------------

原文地址:https://www.cnblogs.com/hyhy904/p/11089231.html

时间: 2024-08-30 15:33:41

Pyhon数据分析20——matplotlib可视化(二)之柱状图的相关文章

用Matplotlib绘制二维图像

唠叨几句: 近期在做数据分析,需要对数据做可视化处理,也就是画图,一般是用Matlib来做,但Matlib安装文件太大,不太想直接用它,据说其代码运行效率也很低,在网上看到可以先用Java做数据处理,然后调用Matlib来画图,另外,还可以使用Matplotlib,它是用Python写的类似Matlib的库,能实现Matlib的功能,而且画图的质量很高,可用于做论文发表.找了一天的资料,终于出图了. Matplotlib需要配合numpy,scipy才能使用,具体安装步骤稍后补充. 正文: 用M

数据分析06 /matplotlib绘图

目录 数据分析06 /matplotlib绘图 1. 绘制线性图:plt.plot() 2. 绘制柱状图:plt.bar() 3. 绘制直方图:plt.hist() 4. 绘制饼状图:pie() 5. 绘制散点图:scatter() 数据分析06 /matplotlib绘图 1. 绘制线性图:plt.plot() 绘制单条线形图 import matplotlib.pyplot as plt import numpy as np x = [1,2,3,4,5] y = [5,4,3,2,1] p

数据分析07 /matplotlib绘图

目录 数据分析07 /matplotlib绘图 1. 绘制线性图:plt.plot() 2. 绘制柱状图:plt.bar() 3. 绘制直方图:plt.hist() 4. 绘制饼状图:pie() 5. 绘制散点图:scatter() 数据分析07 /matplotlib绘图 1. 绘制线性图:plt.plot() 绘制单条线形图 import matplotlib.pyplot as plt import numpy as np x = [1,2,3,4,5] y = [5,4,3,2,1] p

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

当我们获取完数据之后,一般来说数据可视化呈现的最基础图形就是:柱状图.水平条形图.折线图等等,在python的matplotlib库中分别可用bar.barh.plot函数来构建它们,再使用xticks与yticks(设置坐标轴刻度).xlabel与ylabel(设置坐标轴标签).title(标题).legend(图例).xlim与ylim(设置坐标轴数据范围).grid(设置网格线)等命令来装饰图形,让它更明晰与美观,但是对于数据标签(即在图形中的每一个点或条形位置上标注出相应数值),却没有直

【转】数据分析与处理之二(Leveldb 实现原理)

郑重声明:本篇博客是自己学习 Leveldb 实现原理时参考了郎格科技系列博客整理的,原文地址:http://www.samecity.com/blog/Index.asp?SortID=12,只是为了加深印象,本文的配图是自己重新绘制的,大部分内容与原文相似,大家可以浏览原始页面 :-),感兴趣的话可以一起讨论 Leveldb 的实现原理! LevelDb日知录之一:LevelDb 101 说起LevelDb也许您不清楚,但是如果作为IT工程师,不知道下面两位大神级别的工程师,那您的领导估计会

python 使用 matplotlib.pyplot来画柱状图和饼图

导入包 import matplotlib.pyplot as plt 柱状图 最简柱状图 # 显示高度 def autolabel(rects): for rect in rects: height = rect.get_height() plt.text(rect.get_x()+rect.get_width()/2.- 0.2, 1.03*height, '%s' % int(height)) name_list = ['A', 'B', 'C', 'D', 'E', 'F', 'G',

Python数据分析之Matplotlib绘制柱状图

一: 柱状图的示例: import numpy as np import matplotlib.pyplot as plt # 折线统计图 # ax = [23,26,28,31,32,33] #随便创建了一个数据 # ay = [3.0,3.5,4.0,3.0,3.5,4.0] # plt.plot(ax,ay,color='r',linewidth=1,label=u'1')#color指定线条颜色,labeL标签内容 # plt.legend(loc=2)#标签展示位置,数字代表标签具位置

python数据分析工具 | matplotlib

不论是数据挖掘还是数学建模,都免不了数据可视化的问题.对于 Python 来说,matplotlib 是最著名的绘图库,它主要用于二维绘图,当然也可以进行简单的三维绘图.它不但提供了一整套和 Matlab 相似但更为丰富的命令,让我们可以非常快捷地用 python 可视化数据. matplotlib基础 # 安装 pip install matplotlib 两种绘图风格: MATLAB风格: 基本函数是 plot,分别取 x,y 的值,然后取到坐标(x,y)后,对不同的连续点进行连线. 面向对

seaborn 数据可视化(二)带有类别属性的数据可视化

Seaborn的分类图分为三类,将分类变量每个级别的每个观察结果显示出来,显示每个观察分布的抽象表示,以及应用统计估计显示的权重趋势和置信区间: 第一个包括函数swarmplot()和stripplot() 第二个包括函数boxplot()和violinplot() 第三个包括函数barplot()和pointplt() 导入所需要的库: import numpy as np import matplotlib.pyplot as plt import seaborn as sns sns.se