统计学频数分布直方图,python画频率分布直方图
我们在分析数据的时候,需要仔细了解数据的分布。此时,需要绘制频率分布的直方图和条形图。博主的画图工具是python的seaborn,画图效果比matplotlib好[1]。
首先,要明确直方图和条形图的区别。条形图中有一个缺口,但直方图中没有。条形图一般用于类别特征,直方图一般用于数字特征[2]。
histogram def draw _ distribution _histogram(nums,path,is_hist=True,is_kde=True,is_rug=False,_ is _ norm _ hist=False(: bin:直方图列中的数字是_ hist:表示直方图是_kde:表示内核密度图是_ bins 3:如果is_vertist(设置为创建小条形以生成观察值)的观察值在Y轴上是_norm_hist:True,则直方图的高度表示密度而不是计数。如果kde设置为true,该参数将始终切换为true SNS.set(,SNS的默认运行配置,SNS.distplot)。E=is _ kde,rug=iskde _ kws={ color 3360 purpuring } norm _ hist=is _ norm _ hist(# label PLT . xlabel(XXX)在x和y轴上)plt.ylabel plt.savefig (path,Dpi=300)x=NP . random . randn)100)path= distributions,解决添加标题PLT.title (distribution)不完整的问题
条形图/条形图defdraw_bar_chart(nums,path):importpandasaspdcounter=dict)counter(nums))x,y=[[]for lineincounter . items(:x . append)line)0)y . append)line(1))data=PD . data frame(XXX 3330 ax=8))SNS . set))切换到SNS # Palette的默认运行配置:Palette控制stylebarplot=SNS.barplot的不同颜色x palette= set3 fontsize=.遍历得到列左端的横坐标值bar_width=rect.get_width) #得到的列的宽度bar_height=rect.get列的新宽度x _ center=x _ left _ edge be 2。它用于设置new _ bar _ width=0.1 rect . set _ x(x _ center-new _ bar _ war)列左端的横坐标rect . set _ width(new _ bar mobile ha= center font size=12)bar plot _ figure . save figure(path,dpi=300) x=np.random.randint (0,2,size=100)
参考文献[1]中三种制作频率分布直方图的方法,认真总结!
[2]如何使用SNS.dist plot()
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。