seaborn.FacetGrid col参数的行为不符合预期

时间:2017-04-02 09:02:24

标签: python matplotlib seaborn

以下是我的代码。

import seaborn as sns
import matplotlib.pyplot as plt

%matplotlib inline
sns.set_style('whitegrid')

titanic = sns.load_dataset('titanic')
g = sns.FacetGrid(titanic, col="sex")
g = g.map(plt.hist, "age")

直方图如图所示。

current histogram output

现在我对参数col有疑问。我看到连续排列的两个直方图。但我已提到col=sex。那么col参数的目的是什么?为什么直方图以行方式排列?

1 个答案:

答案 0 :(得分:0)

指定col参数子集将数据框按与指示的参数名称匹配的变量分组。每组将绘制在结果图中的单独列中。在您的情况下,数据框变量sex有两组:男性和女性。在结果图中,这些组中的每一个都已绘制在一个单独的列中绘制,这就是为什么在图中有两列和一行的原因。

来自FaceGrid docstring:

  

row,col,hue:strings

     

定义数据子集的变量,将在网格中的不同构面上绘制。请参阅* _order参数以控制此变量的级别顺序。