首页 > 解决方案 > 如何在python中将两个变量绘制为直方图?

问题描述

如何在python中制作连续数据的直方图式条形图?

我拥有的数据看起来像这样简单 plt.plot(x,y) (x 轴未标准化,而是从 0 到 1 的真实数据):

在此处输入图像描述

所以很明显我需要绘制某种分布,但我不知道我在寻找什么。我希望 x 和 y 轴保持不变,所以我不想绘制其中一个变量的直方图,而是不想绘制每个点,我只想绘制 x 的某些区间之间的 y 平均值。我可以用 plt.bar(bins, y-columns) 做到这一点,而且我知道如何计算 bin,但是如何自动找到相应的 y-column 值?

我想必须有一种简单且自动化的方式来做我所描述的事情,但是,我找不到它。

标签: pythonmatplotlibplotdistribution

解决方案


本教程可能对您有所帮助,
https://cmdlinetips.com/2019/02/how-to-make-histogram-in-python-with-pandas-and-seaborn/

sns.distplot(df['lifeExp'],  kde=False, label='Africa')

df =gapminder[gapminder.continent == 'Americas']
sns.distplot(df['lifeExp'],  kde=False,label='Americas')

# Plot formatting
plt.legend(prop={'size': 12})
plt.title('Life Expectancy of Two Continents')
plt.xlabel('Life Exp (years)')
plt.ylabel('Density')

结果为:

结果


推荐阅读