>

내 태어날 짝짓기에 연속적인 색조를 어떻게 도입 할 수 있습니까?

팬더 데이터 프레임을 전달 중입니다. train_df 여러 기능 간의 관계를 시각화하기 위해

그러나 해당 대상 값을 사용하는 색조를 추가하고 싶습니다. target_df . 이 목표 값은 연속적인 스케일에 있습니다 (~ 10에서 100 사이의 수레).

나는 정의했다 sns.color_palette("RdGr") 사용하고 싶습니다.

지금 나는 다음과 같은 페어 플롯을 가지고 있습니다 (색조 없음).

sns.pairplot(train_df)

위에서 정의한 색상 팔레트를 사용하여 target_df를 색조로 전달하려면 어떻게해야합니까?

미리 감사드립니다.


  • 답변 # 1

    IIUC, 당신은 단지 target_df 에 열로 train_df 그리고 그것을 hue :

    sns.pairplot(data=train_df.assign(target=target_df, 
                                      hue='target')
    
    

    그러나이 경우 매우 느려집니다 target 연속적입니다. 대신에, 당신은 두 배를 할 수 있습니다 for 고리:

    num_features = len(train_df.columns)
    fig,ax = plt.subplots(num_features, num_features, figsize=(10,10))
    for i in train_df.columns:
        for j in train_df.columns:
            if i==j:    # diagonal
                sns.distplot(train_df[0], kde=False, ax=ax[i][j])
            else:       # off diagonal
                sns.scatterplot(x=train_df[i],y=train_df[j], 
                                ax=ax[i][j], hue=target_df, palette='BrBG',
                                legend=False)
    
    

    다음과 같은 것을 제공합니다.

  • 답변 # 2

    문서 (https://seaborn.pydata.org/generated/seaborn.pairplot.html)에서 설정 만하면됩니다. palette = my_palette 함수를 다음과 같이 호출 할 때 :

    sns.pairplot(train_df, palette = my_palette)

  • 이전 javascript - typescript에서 부작용을 가져올 수 없습니다
  • 다음 arrays - Swift에서 본문으로 루프가 포함 된 이메일 보내기