matplotlib数据可视化之柱形图

I、柱状图

1、pyplot.bar函数

matplotlib.pyplot.bar(x, height, width=0.8, bottom=None, *, align='center', data=None, **kwargs)

2、主要参数说明

 

 3、官方文档直达链接

https://matplotlib.org/api/_as_gen/matplotlib.pyplot.bar.html?highlight=bar#matplotlib.pyplot.bar

4、相关代码测试

①、图形1

import matplotlib.pyplot as plt
import matplotlib.mlab as mlab
import seaborn as sns
import numpy as np
import pandas as pd

'''
matplotlib.pyplot.bar(x, height, width=0.8, bottom=None, *, align='center', data=None, **kwargs)[source]
'''
# 解决中文不能在图片中显示的问题
plt.rcParams['font.sans-serif'] = ['SimHei']

x_data = ['2011', '2012', '2013', '2014', '2015', '2016', '2017']
y_data = [58000, 60200, 63000, 71000, 84000, 90500, 107000]
y_data2 = [52000, 54200, 51500, 58300, 56800, 59500, 62700]

# x表示起始位置 plt.bar(x
=x_data, height=y_data, ) plt.show()

 

②、图形2

# height只是代表高度,不代表数值,width代表宽度比例,因此范围是0-1,bottom代表y轴启始值
plt.bar(x=x_data, height=y_data, width=0.5, bottom=100000)
plt.show()

 

 ③、图形3

# 多个柱值叠加
plt.bar(x_data, y_data)
plt.bar(x_data, y_data2)
plt.show()

 

④、图形4

# 多个柱并列
# 因为原始值是字符串类型,无法将x轴进行偏倚,所以先转换成普通值,后面使用tick_label修改命名即可
x_range = np.arange(7)
plt.bar(x=x_range, height=y_data, width=0.3, tick_label=x_data)
# x只表示位置关系,因此加上0.3,等于将图像偏移0.3 plt.bar(x
=x_range+0.3, height=y_data2, width=0.3) plt.show()

 

 ⑤、图形5

# 绘制水平柱状图
x_range = np.arange(7)
# 使用barh函数 plt.barh(x_range, y_data, tick_label
=x_data, color='y') plt.show()

 

 

 

posted @ 2019-11-26 15:39  沉默的赌徒  阅读(5111)  评论(0编辑  收藏  举报