六大数据统计图——Python的数据可视化

一直以来,数据可视化就是一个处于不断演变之中的概念,其边界在不断地扩大;因而,最好是对其加以宽泛的定义。数据可视化指的是技术上较为高级的技术方法,而这些技术方法允许利用图形、图像处理、计算机视觉以及用户界面,通过表达、建模以及对立体、表面、属性以及动画的显示,对数据加以可视化解释。与立体建模之类的特殊技术方法相比,数据可视化所涵盖的技术方法要广泛得多。

1.环境

系统:windows10

python版本:python3.6.1

使用的库:matplotlib,numpy

2.numpy库产生随机数几种方法

 

3.散点图

 x x轴
 y y轴
 s   圆点面积
 c   颜色
 marker  圆点形状
 alpha   圆点透明度                #其他图也类似这种配置
1 1 N=50
2 2 # height=np.random.randint(150,180,20)
3 3 # weight=np.random.randint(80,150,20)
4 4 x=np.random.randn(N)
5 5 y=np.random.randn(N)
6 6 plt.scatter(x,y,s=50,c='r',marker='o',alpha=0.5)
7 7 plt.show()

4.折线图

1 x=np.linspace(-10000,10000,100) #将-10到10等区间分成100份
2 y=x**2+x**3+x**7
3 plt.plot(x,y)
4 plt.show()

折线图使用plot函数

 

5.条形图

1 N=5
2 y=[20,10,30,25,15]
3 y1=np.random.randint(10,50,5)
4 x=np.random.randint(10,1000,N)
5 index=np.arange(N)
6 plt.bar(left=index,height=y,color='red',width=0.3)
7 plt.bar(left=index+0.3,height=y1,color='black',width=0.3)
8 plt.show()
 

orientation设置横向条形图

 1 N=5
 2 y=[20,10,30,25,15]
 3 y1=np.random.randint(10,50,5)
 4 x=np.random.randint(10,1000,N)
 5 index=np.arange(N)
 6 # plt.bar(left=index,height=y,color='red',width=0.3)
 7 # plt.bar(left=index+0.3,height=y1,color='black',width=0.3)
 8 #plt.barh() 加了h就是横向的条形图,不用设置orientation
 9 plt.bar(left=0,bottom=index,width=y,color='red',height=0.5,orientation='horizontal')
10 plt.show()
 

6.直方图

1 m1=100
2 sigma=20
3 x=m1+sigma*np.random.randn(2000)
4 plt.hist(x,bins=50,color="green",normed=True)
5 plt.show()
 
#双变量的直方图
#颜色越深频率越高
#研究双变量的联合分布
x=np.random.rand(1000)+2
y=np.random.rand(1000)+3
plt.hist2d(x,y,bins=40)
plt.show()
 

7.饼状图

 1  #设置x,y轴比例为1:1,从而达到一个正的圆
 2 #labels标签参数,x是对应的数据列表,autopct显示每一个区域占的比例,explode突出显示某一块,shadow阴影
 3 labes=['A','B','C','D']
 4 fracs=[15,30,45,10]
 5 explode=[0,0.1,0.05,0]
 6 #设置x,y轴比例为1:1,从而达到一个正的圆
 7 plt.axes(aspect=1)
 8 #labels标签参数,x是对应的数据列表,autopct显示每一个区域占的比例,explode突出显示某一块,shadow阴影
 9 plt.pie(x=fracs,labels=labes,autopct="%.0f%%",explode=explode,shadow=True)
10 plt.show()
 

8.箱型图

1 import matplotlib.pyplot as plt
2 import numpy as np
3 data=np.random.normal(loc=0,scale=1,size=1000)
4 #sym 点的形状,whis虚线的长度
5 plt.boxplot(data,sym="o",whis=1.5)
6 plt.show()
 
原文出处:(https://blog.csdn.net/Stephen_shijun/article/details/83271253)
 

猜你喜欢

转载自www.cnblogs.com/learnprogramming/p/9829958.html
今日推荐