箱线图,Matplotlib内的观察数

2024-05-20 01:07:36 发布

您现在位置:Python中文网/ 问答频道 /正文

您好,我试图用matplotlib来显示boxplot内部的观察值。在

一些假数据举例如下:

data1 = [150, 155, 175, 200, 245, 255, 395, 300, 305, 320, 375, 400, 420, 430, 440]
data2 = [225, 380,325]
fake_data = pd.DataFrame([data1, data2]).transpose()
fake_data.columns = ['data1','data2']
bp = fake_data.boxplot()

我没有找到合适的方法。但我知道有办法使用seaborn,但我想使用matplotlib。在


Tags: columns数据方法dataframedatamatplotlibfakepd
1条回答
网友
1楼 · 发布于 2024-05-20 01:07:36

把数据放在中线以上会造成一些混乱。因为您更喜欢使用中值数据来定位位置,然后将非空值的总和作为文本添加到绘图中,即

bp = fake_data.boxplot()

x = np.arange(fake_data.shape[1])

noofobs = fake_data.notnull().sum().astype(int)

for tick,label in zip(x,bp.get_xticklabels()):
    bp.text(x[tick]+1, fake_data.median()[tick] + 1, noofobs[tick], 
            horizontalalignment='center', color='blue', weight='bold')
plt.show()

Plot Centered

相关问题 更多 >