2017-10-17 89 views
0

我不得不follow the instructions posted here創建散點圖矩陣,使用多種顏色來區分我的數據集(this seems to still be on open issue)中的處理。爲什麼在包含在Seaborn PairGrid中時kdeplot會縮小y軸?

我的問題是,一些我的KDE次要情節是關閉的Y軸比例:Leaf area index PairGrid

這似乎並沒有被那麼嚴重使用「光圈」數據集的問題,但我還是看到它發生在第二,第三和第四個子圖(see the PairGrid in this post)。

如何調整y軸縮放比例,以便我的所有kde數據都適合子插槽?

import matplotlib.pyplot as plt 
import seaborn as sns 
iris = sns.load_dataset("iris") 

g = sns.PairGrid(iris, hue='species', size=2) 

def f(x, **kwargs): 
    kwargs.pop("color") 
    col = next(plt.gca()._get_lines.prop_cycler)['color'] 
    sns.kdeplot(x, color=col, **kwargs) 

g.map_diag(f) 
g.map_offdiag(plt.scatter) 
g.add_legend() 
plt.show() 
+0

鏈接的問題確實有[mcve]。爲什麼要發佈不可重現的代碼而不是使用可用的代碼? – ImportanceOfBeingErnest

+0

我在輸出中包含了一個截圖的鏈接,並認爲從原始代碼發佈在我引用的其他帖子中顯示我使用的代碼是合適的。我對這種明顯的困惑表示歉意。 –

回答

0

該問題現已在0.8.1版的seaborn中修復。

您可以簡單地使用

g = sns.pairplot(iris, hue="species", palette="Set2", diag_kind="kde", size=2.5) 

如文檔中說明。

此外,發佈在this answer中的解決方法將在seaborn 0.8.1中按預期工作,並且不存在任何yscaling問題。

+0

好的,謝謝。我通過conda安裝(v。0.8)安裝了我認爲是今天早些時候最新版本的seaborn。我剛剛安裝了[來自Github](https://github.com/mwaskom/seaborn),現在顏色被區分並且y軸被適當地縮放。但是,我不認爲在您提到的解決方法中解決了縮放問題。你可以看到kde曲線離開y軸刻度。除非我錯過了什麼? –

+0

不,它沒有在解決方法中解決,但由於它已修復爲最新版本,因此無論如何都不需要執行此操作。 – ImportanceOfBeingErnest