【问题标题】:In python, how to add new markers to boxplot?在 python 中,如何向箱线图添加新标记?
【发布时间】:2018-12-28 05:44:30
【问题描述】:

我已经使用 pandas 的箱线图功能创建了箱线图,然后我想将每列的均值/97.5%/2.5% 分位数添加到箱线图中。

    df = pd.DataFrame(np.random.randn(100, 2), columns=['x', 'y'])
    df.boxplot(return_type='axes')

简而言之,我想在图中添加额外的标记或点,以提供更多的统计说明。我能够在 R 图中添加任意点;但是对于python,我不知道怎么做。谢谢。

【问题讨论】:

    标签: python pandas matplotlib boxplot


    【解决方案1】:

    你可以使用scatter来打分:

    import numpy as np
    import pandas as pd
    import matplotlib.pyplot as plt
    
    shape = (100,2)
    
    df = pd.DataFrame(np.random.randn(*shape), columns=['x', 'y'])
    df.boxplot(return_type='axes')
    
    q975 = df.quantile(0.975)
    q025 = df.quantile(0.025)
    mean = df.mean()
    
    plt.scatter(range(1,shape[1]+1), q975, c='m', label='Q_97.5')
    plt.scatter(range(1,shape[1]+1), q025, c='r', label='Q_2.5')
    plt.scatter(range(1,shape[1]+1), mean, c='k', label='Mean')
    
    plt.legend()
    
    plt.show()
    

    【讨论】:

    • 谢谢!这正是我所需要的。
    猜你喜欢
    • 2012-06-28
    • 2020-08-27
    • 2014-06-02
    • 2020-09-16
    • 2018-08-09
    • 2020-05-22
    • 2016-01-26
    • 2021-10-28
    • 2018-04-08
    相关资源
    最近更新 更多