如何在Python中更改直方图的Y轴上的值

时间:2020-09-07 17:10:57

标签: python matplotlib

我在CSV文件中有数据。我正在尝试使用matplotlib绘制直方图。 这是我正在尝试的代码。

data.hist(bins=10)
plt.ylabel('Frequency')
plt.xlabel('Data')
plt.show()

enter image description here

这是我得到的情节。 现在使用相同的代码,我需要创建一个标准化的直方图,以显示数据的概率分布。但是现在,在y轴上,您无需绘制掉落在每个bin中的数据点的数量,而是绘制该数据bin中的数据点的数量除以数据点的总数。

我应该怎么做?

1 个答案:

答案 0 :(得分:1)

Pandas' histogram向基础pyplot.hist()添加了一些功能。许多参数都通过。其中之一是density=

import pandas as pd
import numpy as np
from matplotlib import pyplot as plt

data = pd.DataFrame(np.random.uniform(258.1, 262.3, 20))
data.hist(bins=10, density=True)
plt.ylabel('Density')
plt.xlabel('Data')
plt.show()

example plot

seaborn的一个相关图书馆有一个命令来创建density histogramkde curve,作为概率分布的近似值。

import seaborn as sns
sns.distplot(data, bins=10)