Seaborn – 多面板分类图
我们可以使用两个图表来显示分类数据,您可以使用函数 pointplot(),也可以使用更高级别的函数 factorplot().
Factorplot
Factorplot在FacetGrid上绘制分类图.使用'kind'参数,我们可以选择像boxplot,violinplot,barplot和stripplot这样的图. FacetGrid默认使用pointplot.
示例
import pandas as pd import seaborn as sb from matplotlib import pyplot as plt df = sb.load_dataset('exercise') sb.factorplot(x = "time", y = pulse", hue = "kind",data = df); plt.show()
输出
我们可以使用不同的图来使用种参数可视化相同的数据.
示例
import pandas as pd import seaborn as sb from matplotlib import pyplot as plt df = sb.load_dataset('exercise') sb.factorplot(x = "time", y = "pulse", hue = "kind", kind = 'violin',data = df); plt.show()
输出
在factorplot中,数据绘制在构面网格上.
W face是Facet Grid?
Facet grid 通过划分变量形成由行和列定义的面板矩阵.由于面板,单个图看起来像多个图.分析两个离散变量中的所有组合非常有用.
让我们通过一个例子可视化上面的定义
示例
import pandas as pd import seaborn as sb from matplotlib import pyplot as plt df = sb.load_dataset('exercise') sb.factorplot(x = "time", y = "pulse", hue = "kind", kind = 'violin', col = "diet", data = df); plt.show()
输出
使用Facet的优点是,我们可以在绘图中输入另一个变量.上面的图分为两个图,基于第三个变量,称为'diet',使用'col'参数.
我们可以制作许多列面并将它们与网格的行对齐 :
示例
import pandas as pd import seaborn as sb from matplotlib import pyplot as plt df = sb.load_dataset('titanic') sb.factorplot("alive", col = "deck", col_wrap = 3,data = df[df.deck.notnull()],kind = "count") plt.show()