假设我们有一个数字介于0和1之间的数组:
arr=np.array([ 0. , 0. , 0. , 0. , 0.6934264 ,
0. , 0. , 0. , 0. , 0. ,
0. , 0. , 0.6934264 , 0. , 0.6934264 ,
0. , 0. , 0. , 0. , 0.251463 ,
0. , 0. , 0. , 0.87104906, 0.251463 ,
0. , 0. , 0. , 0. , 0. ,
0. , 0. , 0. , 0. , 0.48419626,
0. , 0. , 0. , 0. , 0. ,
0.87104906, 0. , 0. , 0.251463 , 0.48419626,
0. , 0.251463 , 0. , 0. , 0. ,
0. , 0. , 0. , 0. , 0. ,
0. , 0.251463 , 0. , 0.35524532, 0. ,
0. , 0. , 0. , 0. , 0.251463 ,
0.251463 , 0. , 0.74209813, 0. , 0. ])
使用seaborn
,我想绘制一个分布图:
sns.distplot(arr, hist=False)
如您所见,kde估计范围从-0.20到1.10。是否可以强制估计值介于0和1之间?我做过以下的尝试,但没有成功:
sns.distplot(arr, hist=False, hist_kws={'range': (0.0, 1.0)})
sns.distplot(arr, hist=False, kde_kws={'range': (0.0, 1.0)})
第二行引发异常——range
不是kde_kws
的有效关键字。
预先设置应该有助于:
正确的方法是使用
clip
关键字而不是range
:将产生:
实际上,如果只关心kde而不关心直方图,那么可以使用
kdeplot
函数,它将产生相同的结果:相关问题 更多 >
编程相关推荐