Pandas数据框Boxplot Y轴比例不正确

时间:2019-02-04 18:52:07

标签: python pandas dataframe boxplot

我正在尝试使用Pandas Dataframe的boxplot功能,但是我的某些功能与其他功能的比例不同,这使图表看起来很糟糕,无法读取最小的Y值。 / p>

这是我的代码:

df.boxplot(by='label', figsize=(30,30))

然后我得到一个4 x 4图表的网格,每个网格都有4个正确的标签。

但是,不会针对每个图表单独调整最大值的比例。

有没有办法解决这个问题?谢谢 !

更新

这是我尝试过的事情:

charts = df.boxplot(by='label', figsize=(30,30), return_type='axes')

for ax in charts:
   y_axe_name = ax.get_title()
   min_value = all_data[y_axe_name].min()
   max_value = all_data[y_axe_name].max()
   ax.set_ylim(0, max_value + (20 * max_value / 100))

plt.show()

我受到Set y-axis scale for pandas Dataframe Boxplot(), 3 Deviations?的启发,但仍然无法正常工作。图表仍共享相同的y轴。

1 个答案:

答案 0 :(得分:0)

我发现最好的解决方法是规范化数据集:

def normalized(df, column_name):
  df[column_name].fillna(value=0, inplace=True)
  df[column_name] = df[column_name] / df[column_name].max()
  return df

那样,y比例在0到1之间。