2016-03-24 23 views
0

joint_plotに散布+輪郭、余白にKDEがある海底のJointGridオブジェクトを作成しようとしています。これはかなり近づくが、y軸のマージンは適切に拡大しない。周辺軸を手動で再スケーリングする最良の方法は何ですか?前もって感謝します!Seaborn JointGridのスケール軸KDE限界線

f = p.figure() 
ax = f.add_subplot(111) 
g = sns.JointGrid(xdata, ydata, xlim=(0,1), ylim=(0,1)) 
g.plot_joint(sns.kdeplot, shade=True, cmap="Greys", n_levels=10) 
g.plot_joint(p.scatter, color='#e74c3c', s=1.5) 
g.plot_marginals(sns.kdeplot, color="black", shade=True) 
g.ax_joint.collections[0].set_alpha(0) 
g.set_axis_labels(r'$\frac{\chi_{0}^2-\chi_{\mathrm{null},1}^2{\chi_{0}^2}$', r'$\frac{\chi_{0}^2-\chi_{\mathrm{null},4}^2}{\chi_{0}^2}$') 
p.gcf().subplots_adjust(bottom=.15) 
p.gcf().subplots_adjust(left=.15) 
p.savefig('something') 

は、この新しいアカウントであること、私は画像を投稿するの評判を持っていない - 私の試みへのリンクはこちら - >http://i.imgur.com/9iG860U.png

enter image description here

答えて

3

をあなたはアクセスすることによって、これを制御することができますy-周辺軸はg.ax_marg_yを使用します。そこから、軸制限を通常のmatplotlibの方法で制御できます。 xmaxが手動で変更する必要がある番号

g.ax_marg_y.set_xlim(0,xmax) 

:この場合、あなたはxlimを調整したいです。

あなたがする必要がある場合は、get_xlim()を使用して、現在のxmaxを見つけることができます。

xmin, xmax = g.ax_marg_y.get_xlim() 

次に、あなただけのいくつかの倍数でxmaxが増加する可能性があります。例:

xmin, xmax = g.ax_marg_y.get_xlim() 
g.ax_marg_y.set_xlim(xmin,xmax*2) 
+0

これは私の問題を解決しました。トムありがとう! – Tim