用python的Matplotlib库画条形图和饼图

条形图

  • 用plt.bar()函数
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(10)
data = np.random.randint(1,11,10)

plt.bar(x,data,facecolor = 'pink')
plt.show()

用python的Matplotlib库画条形图和饼图_第1张图片

增加参数试试,可能会更好看

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(10)
data = np.random.randint(1,11,10)

plt.bar(x,data,                   #data 改成-data 可以倒置
        label = 'bar',            
        width = 0.5,              # 条形图之间的间隔
        facecolor = 'pink',       # 条形图颜色
        edgecolor = 'purple',     # 边框颜色
        lw = 1,                   # 边框厚度
        hatch = '/',              # 阴影格式
        tick_label = ['1','2','3','4','5','6','7','8','9','10'] # 下标
       )
plt.legend(loc = 1)               #在pyplot入门那篇博客里有介绍
plt.show()

用python的Matplotlib库画条形图和饼图_第2张图片

如果想要绘制横向的条形图怎么办呢?

  • 用 plt.barh() 函数就搞定,其余参数和plt.bar()一样

在bar后加一个h,由点像numpy中的函数一样,例如np.stack()、np.vstack()、np.hstack(),只不过其是在前面加v和h

import matplotlib.pyplot as plt
import numpy as np
# 可在jupyter notebook中实时显示图片,不用每个图都plt.show()
%matplotlib inline    


x = np.arange(10)
data = np.random.randint(1,11,10)

plt.barh(x,data,label = 'bar',facecolor = 'pink')
plt.legend()

用python的Matplotlib库画条形图和饼图_第3张图片

饼图

  • plt.pie()
import matplotlib.pyplot as plt
import numpy as np

datas = [33,16,56,90,55,10]

#想画个彩虹的颜色
color = ['red','orange','yellow','g','b','purple'] 
labels = ['ab','cd','ef','gh','ij','kl']  # 乱取的

plt.pie(datas, 
        colors=color,     # 设置颜色
        labels = labels   # 设置名称
       )
plt.show()

用python的Matplotlib库画条形图和饼图_第4张图片

感觉彩虹像被压扁了一样
如果你的电脑显示的饼图是扁的,可以用下面这行命令显示圆形的饼图
plt.axis('equal')
用python的Matplotlib库画条形图和饼图_第5张图片

这就是用python画条形图和饼图啦,是不是很简单,一起学习,加油

你可能感兴趣的:(数据可视化)