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

如何为Plotly柱状图添加分数低于0.9的聚合统计展示

实现方案

Plotly 完全可以满足该需求,无需更换其他可视化库,核心是先对原始数据做聚合处理再绘图即可。首先先修正你原代码里的语法错误:原代码color="Count", "features": "Features"},行存在多余的括号和参数格式错误,悬浮展示字段需要通过hover_data参数传入。

具体实现步骤

  • 先对原始数据集做拆分聚合:将所有分数小于0.9的记录的计数值求和,合并为单独的「<0.9 汇总」分类
  • 保留分数大于等于0.9的原始数据条目
  • 拼接两部分数据,将汇总分类放在x轴最左侧,再调用柱状图接口绘制即可
  • 可按需给汇总柱设置差异化颜色、添加数值标注,和普通分数柱做视觉区分

可直接运行的代码示例

import pandas as pd
import plotly.express as px

# 数据聚合处理
# 计算分数<0.9的总计数
low_score_total = loans_scores_df[loans_scores_df["Score"] < 0.9]["Count"].sum()
low_score_part = pd.DataFrame({
    "Score": ["<0.9(汇总)"],
    "Count": [low_score_total],
    "Features": ["分数低于0.9的所有特征计数合计"]
})
# 保留分数>=0.9的原始数据
high_score_part = loans_scores_df[loans_scores_df["Score"] >= 0.9].copy()
# 拼接为最终绘图数据集,汇总项默认排在最前
plot_data = pd.concat([low_score_part, high_score_part], ignore_index=True)

# 绘制柱状图
fig = px.bar(
    plot_data,
    x="Score",
    y="Count",
    color="Count",
    hover_data=["Features"],
    height=400,
    color_continuous_scale="Blues"
)

# 可选:给汇总柱设置突出显示的颜色
fig.update_traces(
    marker_color=["#e74c3c" if val == "<0.9(汇总)" else None for val in plot_data["Score"]]
)

# 可选:给汇总柱添加合计值标注
fig.add_annotation(
    x=0,
    y=low_score_total,
    text=f"合计:{low_score_total}",
    yshift=12,
    showarrow=False
)

fig.show()

其他可选展示形式

如果不想把汇总值和普通分数柱放在同一坐标轴,也可以用plotly.subplots.make_subplots创建左右布局的子图:左侧单独放一个指标卡/短柱展示<0.9的总计数,右侧放>=0.9区间的分数分布柱状图,信息区分度会更高。

内容的提问来源于stack exchange,提问作者InsDSt

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 14:36:21