结合不同的 seaborn 分布图
Combine different seaborn distribution plots
我将 seaborn 和 matplotlib 与 Python3 结合使用来可视化两个不同数组的分布。我使用的代码是:
# Create two matrices (can be 'n' dimensional)-
x = np.random.normal(size = (5, 5))
y = np.random.normal(size = (5, 5))
# On using seaborn, it creates two different plots-
sns.displot(data = x.flatten(), label = 'x')
sns.displot(data = y.flatten(), label = 'y')
plt.legend(loc = 'best')
plt.show()
# Whereas, matplotlib merges these two distributions into one plot-
plt.hist(x = x.flatten(), label = 'x')
plt.hist(x = y.flatten(), label = 'y')
plt.legend(loc = 'best')
plt.show()
如何获得将 matplotlib 中实现的这两个分布合并到 seaborn 中的结果?
首先将您的数据合并到 pandas.DataFrame
中,然后使用 displot:
import pandas as pd
df = pd.DataFrame({'x': x.flatten(), 'y': y.flatten()})
sns.displot(data=df)
或者直接使用字典:
sns.displot(data={'x': x.flatten(), 'y': y.flatten()})
我将 seaborn 和 matplotlib 与 Python3 结合使用来可视化两个不同数组的分布。我使用的代码是:
# Create two matrices (can be 'n' dimensional)-
x = np.random.normal(size = (5, 5))
y = np.random.normal(size = (5, 5))
# On using seaborn, it creates two different plots-
sns.displot(data = x.flatten(), label = 'x')
sns.displot(data = y.flatten(), label = 'y')
plt.legend(loc = 'best')
plt.show()
# Whereas, matplotlib merges these two distributions into one plot-
plt.hist(x = x.flatten(), label = 'x')
plt.hist(x = y.flatten(), label = 'y')
plt.legend(loc = 'best')
plt.show()
如何获得将 matplotlib 中实现的这两个分布合并到 seaborn 中的结果?
首先将您的数据合并到 pandas.DataFrame
中,然后使用 displot:
import pandas as pd
df = pd.DataFrame({'x': x.flatten(), 'y': y.flatten()})
sns.displot(data=df)
或者直接使用字典:
sns.displot(data={'x': x.flatten(), 'y': y.flatten()})