内容简介:每日一博|Python 数据可视化----绘制各种图形
1.环境
系统:windows10
python版本:python3.6.1
使用的库:matplotlib,numpy
2.numpy库产生随机数几种方法
import numpy as np
rand(d0, d1, ..., dn) | In [2]: x=np.random.rand(2,5) In [3]: x Out[3]: array([[ 0.84286554, 0.50007593, 0.66500549, 0.97387807, 0.03993009], [ 0.46391661, 0.50717355, 0.21527461, 0.92692517, 0.2567891 ]]) |
randn(d0, d1, ..., dn)查询结果为标准正态分布 |
In [4]: x=np.random.randn(2,5) In [5]: x Out[5]: array([[-0.77195196, 0.26651203, -0.35045793, -0.0210377 , 0.89749635], [-0.20229338, 1.44852833, -0.10858996, -1.65034606, -0.39793635]]) |
randint(low,high,size) | 生成low到high之间(半开区间 [low, high)),size个数据 In [6]: x=np.random.randint(1,8,4) In [7]: x Out[7]: array([4, 4, 2, 7]) |
random_integers(low,high,size) | 生成low到high之间(闭区间 [low, high)),size个数据 In [10]: x=np.random.random_integers(2,10,5) In [11]: x Out[11]: array([7, 4, 5, 4, 2]) |
3.散点图
x x轴 y y轴 s 圆点面积 c 颜色 marker 圆点形状 alpha 圆点透明度 #其他图也类似这种配置
N=50 # height=np.random.randint(150,180,20) # weight=np.random.randint(80,150,20) x=np.random.randn(N) y=np.random.randn(N) plt.scatter(x,y,s=50,c='r',marker='o',alpha=0.5) plt.show()
4.折线图
x=np.linspace(-10000,10000,100) #将-10到10等区间分成100份 y=x**2+x**3+x**7 plt.plot(x,y) plt.show()
折线图使用plot函数
5.条形图
N=5 y=[20,10,30,25,15] y1=np.random.randint(10,50,5) x=np.random.randint(10,1000,N) index=np.arange(N) plt.bar(left=index,height=y,color='red',width=0.3) plt.bar(left=index+0.3,height=y1,color='black',width=0.3) plt.show()
orientation设置横向条形图
N=5 y=[20,10,30,25,15] y1=np.random.randint(10,50,5) x=np.random.randint(10,1000,N) index=np.arange(N) # plt.bar(left=index,height=y,color='red',width=0.3) # plt.bar(left=index+0.3,height=y1,color='black',width=0.3) #plt.barh() 加了h就是横向的条形图,不用设置orientation plt.bar(left=0,bottom=index,width=y,color='red',height=0.5,orientation='horizontal') plt.show()
6.直方图
m1=100 sigma=20 x=m1+sigma*np.random.randn(2000) plt.hist(x,bins=50,color="green",normed=True) plt.show()
# #双变量的直方图 # #颜色越深频率越高 # #研究双变量的联合分布
#双变量的直方图 #颜色越深频率越高 #研究双变量的联合分布 x=np.random.rand(1000)+2 y=np.random.rand(1000)+3 plt.hist2d(x,y,bins=40) plt.show()
7.饼状图
#设置x,y轴比例为1:1,从而达到一个正的圆
#labels标签参数,x是对应的数据列表,autopct显示每一个区域占的比例,explode突出显示某一块,shadow阴影
labes=['A','B','C','D'] fracs=[15,30,45,10] explode=[0,0.1,0.05,0] #设置x,y轴比例为1:1,从而达到一个正的圆 plt.axes(aspect=1) #labels标签参数,x是对应的数据列表,autopct显示每一个区域占的比例,explode突出显示某一块,shadow阴影 plt.pie(x=fracs,labels=labes,autopct="%.0f%%",explode=explode,shadow=True) plt.show()
8.箱型图
import matplotlib.pyplot as plt import numpy as np data=np.random.normal(loc=0,scale=1,size=1000) #sym 点的形状,whis虚线的长度 plt.boxplot(data,sym="o",whis=1.5) plt.show()
#sym 点的形状,whis虚线的长度
github地址: https://github.com/nanxung/python-.git
码云地址: https://git.oschina.net/nanxun/pythonshujukeshihuajiantu.git
以上所述就是小编给大家介绍的《每日一博|Python 数据可视化----绘制各种图形》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 【 可视化】热力图绘制原理
- iOS可视化动态绘制连通图(Swift版)
- Python绘制六种可视化图表详解(建议收藏)
- Python 数据可视化:DataFrame.plot() 函数绘制数据图
- iOS可视化动态绘制八种排序过程(Swift版)
- Python 可视化(4):WordCloud 中英文词云图绘制方法汇总
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
疯狂Java讲义
李刚 / 电子工业出版社 / 2014-7-1 / 109.00元
《疯狂Java讲义(第3版)(含CD光盘1张)》是《疯狂Java讲义》的第3版,第3版保持了前两版系统、全面、讲解浅显、细致的特性,全面新增介绍了Java 8的新特性,《疯狂Java讲义(第3版)(含CD光盘1张)》大部分示例程序都采用Lambda表达式、流式API进行了改写,因此务必使用Java 8的JDK来编译、运行。 《疯狂Java讲义(第3版)(含CD光盘1张)》深入介绍了Java编......一起来看看 《疯狂Java讲义》 这本书的介绍吧!