web-dev-qa-db-ja.com

Seabornプロットの凡例のフォントサイズを増やす方法

シーボーンストリッププロットを作成するには、次のコードがあります。プロットに表示される凡例のフォントサイズを増やす方法を見つけるのに苦労しています。

g=sns.stripplot(x="Market", y="Rate", hue="Group",data=myBenchmarkData, jitter=True, size=12, alpha=0.5)
g.axes.set_title("4* Rate Market and by Hotel Groups for Year 2016",fontsize=25)
g.set_xlabel("Market",fontsize=20)
g.set_ylabel("Rate (in EUR)",fontsize=20)
g.tick_params(labelsize=15)
plt.savefig ('benchmark1.png')

X軸とy軸のラベルのフォントサイズは問題ありませんが、プロットの凡例のフォントサイズは小さくなっています。それを変更するには?

14
user3115933

この例に従って、matplotlib関数setpを使用します。

import seaborn as sns
import matplotlib.pylab as plt
sns.set_style("whitegrid")
tips = sns.load_dataset("tips")

ax = sns.stripplot(x="sex", y="total_bill", hue="day", data=tips, jitter=True)
plt.setp(ax.get_legend().get_texts(), fontsize='22') # for legend text
plt.setp(ax.get_legend().get_title(), fontsize='32') # for legend title

plt.show()

enter image description here

別の方法は、font_scaleすべてのグラフのplotting_contexthttp://seaborn.pydata.org/generated/seaborn.plotting_context.html

18
Serenity

今日これを行うには、フィギュアをセットアップしてから電話するだけの簡単な方法があります

plt.legend(fontsize='x-large', title_fontsize='40')

https://matplotlib.org/api/_as_gen/matplotlib.pyplot.legend.html

使用しているmatplotlibのバージョンに依存する場合があります。 2.2.3を使用していますが、fontsizeパラメーターはありますが、title_fontsizeはありません。

4
Major Major