You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Plotly Express直方图自定义分箱大小的实现方法

Plotly Express直方图自定义分箱大小的实现方法

嗨,我来帮你搞定Plotly直方图自定义分箱的问题!我懂你说的那种烦恼——默认分箱总是不符合自己想要的区间,其实Plotly Express完全支持自定义分箱设置,方法比你想象的简单~

首先先还原你的原始数据和默认绘图代码:

import pandas as pd
import plotly.express as px

data = {'product_name': ['link', 'zelda', 'impa', 'rauru', 'saria', 'darunia'], 'variance': [0.95, -0.85, 0.3, 0.2, 0.03, 0.02]}
df = pd.DataFrame(data)

# 默认生成的直方图
px.histogram(df, 'variance')

要实现你想要的5个自定义起止的分箱,只需要在px.histogram里加上bins参数,直接传入你定义好的分箱边界列表就可以了。比如假设你想要的分箱边界是[-1, -0.6, -0.2, 0.2, 0.6, 1](对应5个区间),代码修改如下:

# 自定义分箱边界:5个分箱需要6个边界值,相邻值组成一个区间
custom_bins = [-1, -0.6, -0.2, 0.2, 0.6, 1]
fig = px.histogram(df, x='variance', bins=custom_bins)
fig.show()

补充说明:

  • bins参数接受一个数值列表,列表元素的数量比分箱数多1,每个相邻元素组成一个分箱区间,完全满足你自定义起止的需求
  • 如果只是想要固定数量的等宽分箱,也可以用bin_range配合nbins,比如px.histogram(df, x='variance', bin_range=[-1, 1], nbins=5),不过这种方式是等宽分箱,如果你需要不等宽的自定义区间,还是用bins直接指定边界更灵活

这样就能生成和你目标图一致的自定义分箱直方图啦!

备注:内容来源于stack exchange,提问作者Tyler Moore

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.13 19:55:27