bar
所属模块:matplotlib
功能:绘制二维、三维柱状图
在线测试代码效果:http://kakazai.cn/index.php/Kaka/Python/query/name/bar
实例1:普通例子
#!/usr/bin/python3
#code-python(3.6)
import matplotlib.pyplot as plt
x = [1,2,3,4] #x值
y = [5,4,3,2] #y值
plt.bar(x,y) #绘制柱状图
plt.show() #显示柱状图
函数说明
bar(x,y,color='r')
返回值说明
柱状图
参数说明
x 自变量
y 因变量
color 柱条的颜色
实例2:绘制多个系列的y值
#!/usr/bin/python3
#code-python(3.6)
import matplotlib.pyplot as plt
x = [1,2,3] #数据集
y1 = [0,1,2]
y2 = [3,4,5]
plt.bar(x,y1,bottom=y1,color ='r') #绘制柱状图,先描绘(x,y1),在y的基础上增加y2,增加的部分被标为红色
plt.show() #显示柱状图
实例3:z值只有一个的三维柱状图
#!/usr/bin/python3
#code-python(3.6)
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
x = [1, 2, 3]
y = [4,5,6]
z = 2
ax.bar(x, y, zs=z, color='blue', alpha=0.8)
plt.show()
实例4:立体3D柱状图
#!/usr/bin/python3
#code-python(3.6)
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure() #设置画布
#将画布分为1行1列,共1个子图,并定位在第1个子图
ax = fig.add_subplot(111, projection='3d') #画3D图
x = [1, 2, 3]
y = [4,5,6]
z = [7,8,9]
ax.bar(x, y, zs=z,zdir='y',color='blue') #将y值刻在z轴
plt.show()
实例5:销售立体柱状图
#!/usr/bin/python3
#code-python(3.6)
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure() #设置画布
#将画布分为1行1列,共1个子图,并定位在第1个子图
ax = fig.add_subplot(111, projection='3d') #画3D图
for z in [2011, 2012, 2013, 2014,2015,2016]:
xs = range(1,13) #[1,12]等差数列,步长为1
ys = 1000 * np.random.rand(12) #一行数,共12个,范围是[0,1000)
ax.bar(xs, ys, zs=z, zdir='y', color='blue', alpha=0.8)
plt.title('sale')
plt.show()