Seaborn 简明教程

Seaborn - Multi Panel Categorical Plots

分类数据可以使用两个图表进行可视化,您可以使用函数 pointplot() ,或更高级别的函数 factorplot()

Factorplot

Factorplot 在 FacetGrid 上绘制分类图。使用“类型”参数,我们可以选择箱线图、小提琴图、条形图和条带图等图表。FacetGrid 默认使用点图。

Example

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()

Output

l

我们可以使用 kind 参数使用不同的图表可视化相同的数据。

Example

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()

Output

sharp

在因子图中,数据将绘制在面网格上。

What is Facet Grid?

*面网格*通过划分变量来构成由行和列定义的面板矩阵。由于有面板,因此单个图看起来像是多个图。这对于分析两个离散变量中的所有组合非常有帮助。

让我们用一个例子来可视化上述定义

Example

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()

Output

two types

使用面网格的优点是,我们可以将另一个变量输入到图中。上面的图基于名为“饮食”的第三变量,并使用“col”参数分为两个图。

我们可以制作许多列面网格并将它们与网格的行对齐 −

Example

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()

output

varioustypes