多面板分类图(Multi Panel Categorical Plots)
优质
小牛编辑
134浏览
2023-12-01
我们可以使用两个图表来显示分类数据,您可以使用函数pointplot()或更高级别的函数factorplot() 。
Factorplot (Factorplot)
Factorplot在FacetGrid上绘制了一个分类图。 使用'kind'参数,我们可以选择像boxplot,violinplot,barplot和stripplot这样的情节。 FacetGrid默认使用pointplot。
例子 (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)
我们可以使用不同的图来使用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)
实际上,数据被绘制在小平面网格上。
什么是Facet Grid?
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)
使用Facet的优点是,我们可以在绘图中输入另一个变量。 上面的图分为两个图,基于第三个变量,称为'diet',使用'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()