def plot_averages_by_type(df, figname, fignum, use_en_source=True, pointplot=True, layer0=True):
plt.figure(fignum)
if use_en_source:
df_side = df[(df.source == 'en') & (df.target != 'en')]
else:
df_side = df[(df.source != 'en') & (df.target == 'en')]
if not layer0:
df_side = df_side[df_side.layer != '0']
plotfunc = sns.pointplot if pointplot else sns.boxplot
if pointplot:
plotfunc(x='accuracy', y='relation', hue='layer', data=df_side, join=False)
else:
plotfunc(x='accuracy', y='relation', hue='layer', data=df_side)
plt.xlabel('Accuracy')
plt.ylabel('')
plt.tight_layout()
plt.savefig(figname)
return fignum + 1
评论列表
文章目录