【问题标题】:Iterating through a dataframe when plotting an histogram绘制直方图时遍历数据框
【发布时间】:2021-05-20 01:06:11
【问题描述】:

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

我有一个数据框,其中包含几个 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 循环结构,但直到现在我还没有弄清楚......另外,我还没有找到任何合适的方法来直接绘制图例中的列名以及直方图在不手动设置的情况下更改颜色。

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

【问题讨论】:

    标签: python dataframe for-loop matplotlib histogram


    【解决方案1】:

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

    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)
    

    【讨论】:

    • 哇哦,没想到这么简单,谢谢!还有没有办法避免多次使用相同的颜色?颜色在前 6 列之后重复。
    猜你喜欢
    • 1970-01-01
    • 2019-11-24
    • 1970-01-01
    • 2019-01-15
    • 2022-07-26
    • 2015-12-31
    • 2023-03-08
    • 1970-01-01
    • 2019-09-12
    相关资源
    最近更新 更多