python 数据可视化
pip install matplotlib
引入:
import matplotlib.pyplot as plt (大量接口都在这里边)
绘制线图:
- x=[1,2,3,4] (指定 X 轴)
- y=[4,5,6,7] (指定 Y 轴)
- plt.plot(x,y) (将数组传入, 绘制线图)
- plt.plot(x,y,label = 线的名字) (如果想要显示线的名字, 直接在函数中传入)
- plt.legend(loc=0) (数字 1-10 来指定显示的位置)
- plt.show() (显示出来)
(想要同时显示多个线图, 只需要多次指定 plt.plot(x1,y1) 即可)
- plt.xlabel(X 轴名字) (指定 X 轴名字)
- plt.ylabel(Y 轴名字) (指定 Y 轴名字)
- plt.title(这个线图的名字) (指定线图名字)
绘制条形图:
- x=[1,2,3,4,5] (指定 X 轴)
- y=[4,5,6,7,9] (指定 Y 轴)
- plt.bar(x,y) (绘制条形图)
- plt.show() (显示出来)
- plt.axis([0,12,0,7]) (自己指定 X 轴和 Y 轴范围, 四个参数分别为 X 轴从 0 到 12,Y 轴从 0 到 7)
或者使用 xlim() 和 ylim() 函数功能一样
根据数据量的多少绘制条形图
- import numpy as np
- x=np.random.randint(1,100,100) (产生 1 到 100 的 100 个随机整数)
- bins=[0,10,20,30,40,50,60,70,80,90,100] (指定划分范围)
- plt.hist(x,bins) (根据指定的范围划分在此范围内有多少符合的数据)
- plt.hist(x,bins,rwidth=0.7) (使条形图有间距)
- plt.show()
绘制散点图:
- x=np.random.randint(1,10,50) (产生随机数)
- y=np.random.randint(1,10,50)
- plt.scatter(x,y) (绘制散点图, 也可以同时生成多组数据)
- plt.scatter(x,y,color = r) (指定颜色)
- plt.show()
面向对象:
绘制散点:
- fig,ax=plt.subplots() (初始化画布和图像)
- ax.scatter(x,y)
- plt.show()
绘制饼图:
- label=A,B,C,D (设定模块标签)
- size=[12,30,45,10] (设定比例)
- fig,ax=plt.subplots()
- ax.pie(size,labels = label) (绘制饼图)
- ax.pie(size,labels = label,autopct=%1.1f%%) (显示百分比)
- ax.pie(size,labels = label,shadow=True) (显示阴影)
- ax.pie(size,labels = label,startangle=90) (设定起始角度)
- ax.pie(size,labels = label,explode=explode) (突出显示一个元素)
要使用这个选项, 首先要定义 explode 变量
- explode=(0,0.1,0,0)
- ax.axis(equal) (让饼形图正起来显示)
- plt.show()
来源: http://www.bubuko.com/infodetail-2544823.html