绘制直方图时遍历数据框

Iterating through a dataframe when plotting an histogram

我在一项可能非常简单的任务中遇到了麻烦。

我有一个包含 n 个模型结果的数据框:

actuals model1 model2 model3
0.12 0.21 0.54 0.81
0.41 0.52 0.41 0.21
... ... ... ...

我想生成 一个 图,其中包含 n 个模型的直方图,而不必每次都为每一行单独调用 plt.hist(df["actuals"], name="actuals", color="blue")。我尝试了一些 for-loop 结构,但直到现在我才弄清楚...另外,我还没有找到任何合适的方法来直接绘制图例中的列名,以及直方图无需手动设置即可更改颜色。

希望有人能帮助我!提前谢谢你。

假设您的目标是在同一直方图上绘制 table 每列值的分布:

data = {
        'Model_A':np.random.uniform(low=0, high=0.5, size=(100,)),
        'Model_B':np.random.uniform(low=0.5, high=1, size=(100,)),
        'Model_C':np.random.uniform(low=0.3, high=0.6, size=(100,)),
        'Model_D':np.random.uniform(low=0.1, high=0.7, size=(100,)),
        'Model_E':np.random.uniform(low=0, high=1, size=(100,))
       } 
  
# Create DataFrame 
df = pd.DataFrame(data) 

df.plot.hist(bins=12, alpha=0.5)