web-dev-qa-db-ja.com

Seaborn kdeplotの軸のスケールにラベルを付けて変更する方法

これが私のコードです

import numpy as np
from numpy.random import randn
import pandas as pd
from scipy import stats
import matplotlib as mpl
import matplotlib.pyplot as plt
import seaborn as sns


fig = sns.kdeplot(treze, shade=True, color=c1,cut =0, clip=(0,2000))
fig = sns.kdeplot(cjjardim, shade=True, color=c2,cut =0, clip=(0,2000))

fig.figure.suptitle("Plot", fontsize = 24)

plt.xlabel('Purchase amount', fontsize=18)
plt.ylabel('Distribution', fontsize=16)

、次のプロットになります:

enter image description here

私は2つのことをしたいです。

1)値に10000を掛けてy軸のスケールを変更し、可能であれば、数値に%記号を追加します。つまり、上のプロットに示されているy軸の値を0%、5%、10%、15%、20%、25%、30%にしたいのです。

2)x軸に値を追加します。特に200の間隔でデータを表示することに興味があります。つまり、プロットに表示されるx軸の値を0、200、400、600などにしたいのです。

11
iatowks

1)あなたが探しているのは、おそらくget_yticks()とset_yticksのいくつかの組み合わせです:

plt.yticks(fig.get_yticks(), fig.get_yticks() * 100)
plt.ylabel('Distribution [%]', fontsize=16)

注:mwaskomはコメント時間10000で、%記号は数学的に正しくないため。

2)xticks関数を使用して、目盛りを配置する場所を指定できます。その後、ティックが増え、データが読みやすくなります。その方法でより多くのデータを取得することはありません。

plt.xticks([0, 200, 400, 600])
plt.xlabel('Purchase amount', fontsize=18)

注:ビューを指定したx値に制限したい場合は、plt.xlim()を垣間見て、図を興味深い範囲に縮小することもできます。

20
cattt84