我对直方图的y轴有疑问,这是在带有seaborn的默认配对图中生成的。
以下是一些示例代码:
import pandas as pd
import seaborn as sns
import numpy as np
data = [np.random.random_sample(20), np.random.random_sample(20)]
dataFrame = pd.DataFrame(data=zip(*data))
g = sns.pairplot(dataFrame)
g.savefig("test.png", dpi=100)
对角放置直方图中y轴的单位是多少?如何在此视图中读取bin的高度?
非常感谢,
克里斯
答案 0 :(得分:4)
默认情况下,pairplot
使用对角线来显示"显示该列中变量的数据的单变量分布" (http://stanford.edu/~mwaskom/software/seaborn/generated/seaborn.pairplot.html)。
因此,每个条形表示相应bin中的值的计数(可以从X轴获得)。但是,Y轴与实际计数不对应,而是与散点图相对应。
我无法从PairPlot
本身获取数据,但如果您不这样说,则seaborn会使用plt.hist()
生成该对角线,因此您可以使用以下方式获取数据:< / p>
import matplotlib.pyplot as plt
%matplotlib inline
import pandas as pd
import seaborn as sns
import numpy as np
data = [np.random.random_sample(20), np.random.random_sample(20)]
dataFrame = pd.DataFrame(data=zip(*data))
g = sns.pairplot(dataFrame)
# for the first variable:
c, b, p = plt.hist(dataFrame.iloc[:,0])
print c
# [ 3. 6. 0. 2. 3. 0. 1. 3. 1. 1.]