sns.facegrid画图⽤法
最近使⽤seaborn(sns)中的Facegrid模块作图,有以下⼏点⽤法进⾏分享,以备后续学习与记录:
1、关于Facegird多图绘制的理解
Facegird是实现seaborn中绘制多个图形的接⼝。可⽤来将不同变量数据绘制到同⼀个图中,也可以绘制多个图形。Facegird基本的⼯作流程是使⽤数据集和⽤于构造⽹格的变量来初始化对象。然后,可以通过调⽤或将⼀个或多个绘图函数应⽤于每个⼦集 。最后,可以使⽤其他⽅法来调整绘图,以执⾏诸如更改轴标签,使⽤不同的刻度线或添加图例之类的操作。例程如下所⽰。
fg = (
sns.FacetGrid(data = Totaldata, hue = 'label' , col = 'index', row = 'row', height = 2.5, aspect = 1.25)
.map(probscale.probplot, 'y', marker='.', markersize=0.005, )
.set_axis_labels(x_var='X', y_var = 'Y')
.add_legend()
)
关于Facegird,有⼏点参数需要说明:
(1) 绘制图形的参数级别:有3个参数级别:'hue' ,'col' ,'row' ,控制变量绘制在图形的不同级别。
(2) .map(probscale.probplot, 'y', marker='.', markersize=0.005, ) 将概率图应⽤到‘y’对应的变量上。
teamviewer(3)  .set_axis_labels(x_var='X', y_var = 'Y') 设置了每个⼦图的横轴与纵轴的标签
2、Facegrid设置坐标轴标签旋转的⽅法
在Facegrid中,设置坐标轴标签旋转⾸先要到⼦图对应的对象,这个过程⽐较波折(此处省略1000字),使⽤下⾯的语句就可以得到⼦图对象ax。然后,对⼦图对象进⾏设置,如下所⽰。 语句为 ax.set__xticks(), rotation=90) 。
for index, ax in fg.axes_dict.items():
ax.set_xlim(left=1, right=99)
ax.set_ylim(bottom=-25, top=150)
ax.set__xticks(), rotation=90)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。