2014-09-19 5 views
5

this example에 따라 플롯을 생성하기 위해 해번을 사용하고 있습니다. 내가해저 컬러 플롯의 크기를 해골 조인트 플롯의 축 크기로 설정하십시오.

g = sns.jointplot(x1, x2, kind="kde", size=7, space=0, xlim=(-5,5), ylim=(-5,5)) 

코드의 마지막 행을 변경할 때

import numpy as np 
import pandas as pd 
import seaborn as sns 
sns.set(style="white") 

rs = np.random.RandomState(5) 
mean = [0, 0] 
cov = [(1, .5), (.5, 1)] 
x1, x2 = rs.multivariate_normal(mean, cov, 500).T 
x1 = pd.Series(x1, name="$X_1$") 
x2 = pd.Series(x2, name="$X_2$") 

g = sns.jointplot(x1, x2, kind="kde", size=7, space=0) 

그러나 배경색이 제대로 변경되지 않습니다 enter image description here

을 그것을 채우도록 내가 배경색을 해결할 수있는 방법 전체 줄거리?

+1

그래서 여기에 문제는 시본은 두 차원에서 -4에서 그리고 4 KDE를 계산이다. 이것에 대한 실제 해결책 인 IMO는 팔레트 블루 (KDE = 0)를 무한대로 확장하는 것이 아니라 그 컬러 팔레트의 최저 레벨을 축의 배경 음영으로 설정하는 것입니다. –

답변

5

기본 기능 (kdeplot)에 KDE 예상치를 더 멀리 확장해야 함을 알릴 필요가 있습니다. 이는 cut 인수를 통해 이루어지며, 이는 KDE 대역폭의 함수입니다. 기본 설정은 3이며, 설정 방법을 정확하게 알려주는 확실한 방법은 없지만 놀고 값을 찾는 것이 어렵지 않습니다. jointplot을 사용하는 경우 joint_kws 사전에이 값을 전달하여 적절한 플로팅 기능으로 전송되도록 할 수 있습니다.

sns.jointplot(x1, x2, kind="kde", size=7, space=0, 
       joint_kws={"cut": 10}, 
       xlim=(-5,5), ylim=(-5,5)) 

짜잔 :

enter image description here

0

매우 비슷하지만 색상이 맞지 않습니다. cm 모듈에서 컬러 맵 ("cool"?)을 발견하면 정확한 색상을 찾을 수 있습니다.

ax = plt.gcf().axes[0] 
ax.set_axis_bgcolor((.93,.93,1)) 

대화 형으로 작업하는 경우 새 색상을 표시하려면 plt.draw()가 필요합니다.

+0

그건 그렇고, 아마도 'jointplot' (내 대답처럼)을 호출 할 때 이것을 달성하는 것이 더 좋을지 모르지만,이 색상을 얻는 방법을 알고 싶다면 먼저 함수의 출력을 a 변수를 호출하고,'g'라고하고,'g.ax_joint.collections [0] .get_facecolor()'를 수행하십시오. – mwaskom

관련 문제