Seaborn提供配对实用程序,其中对角线将提供带有彩色类别的直方图。请参阅documentation中的第二个示例。我试图生成一个直方图,其中条形图按给定类别着色,但到目前为止我还没有。这是我尝试过的:
首先,我试图提取情节,例如:
iris = sns.load_dataset("iris")
g = sns.pairplot(iris, hue="species")
ax = g.diag_axes[0]
ax.plot()
哪个不起作用,因为ax
对象表现为emtpy。或者,我还没有找到直接绘制这种直方图的直接方法。我试过了:
g = sns.pairplot(iris, hue="species", vars=['sepal_length'])
这将只生成一个直方图,但是y刻度不正确,我无法更改它们。
答案 0 :(得分:2)
我发现matplotlib直接提供此功能,如图here所示。 以下是iris数据集示例的解决方案:
x = [iris.sepal_length[iris.species==sp_name] for sp_name in ['setosa', 'versicolor', 'virginica']]
plt.hist(x, 8, density=True, histtype='bar', stacked=True)