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

Plotly代码报错:positional argument follows keyword argument 求助

解决Plotly堆叠柱状图的SyntaxError问题

报错翻译

SyntaxError: 位置参数位于关键字参数之后

问题分析

  1. 导入错误:错误地将plotly.graph_objects导入为px,同时重复导入了非标准包plotly.graph_objs(正确包名为plotly.graph_objects),导致对象引用混乱。
  2. 语法结构错误:每个go.Bar()实例应作为data列表的独立元素,但你错误地将后续go.Bar()嵌套在前一个go.Bar()的参数列表中,且未正确闭合多个go.Bar()的括号,触发了Python语法解析错误。
  3. 颜色未生效:定义了颜色列表但未将其关联到柱状图系列,导致颜色设置无效。

修正后的代码

import plotly.graph_objects as go

x = ['18-25', '25-35', '35-45','45-55','55-65']

plot = go.Figure(data=[
    go.Bar(
        name='Bulle de Babel',
        x=x,
        y=[97,204,192,145,96],
        marker_color='#FDCCFF'
    ),
    go.Bar(
        name='Maniet',
        x=x,
        y=[30,73,85,80,43],
        marker_color='#0F22FA'
    ),
    go.Bar(
        name='iPhone',
        x=x,
        y=[165,127,143,107,86],
        marker_color='#D73E0F'
    ),
    go.Bar(
        name='hey',
        x=x,
        y=[115,99,92,92,31],
        marker_color='#ffd700'
    ),
    go.Bar(
        name='usg',
        x=x,
        y=[64,59,51,29,23],
        marker_color='#707070'
    )
])

plot.update_layout(barmode='stack')
plot.show()

修正说明

  • 统一导入规范:使用plotly.graph_objects的标准别名go,移除重复导入。
  • 修复列表结构:将每个go.Bar()作为data列表的独立元素,正确闭合所有括号,避免嵌套语法错误。
  • 绑定颜色:通过marker_color参数将预设颜色应用到每个柱状图系列,确保颜色显示正常。
  • 保留堆叠模式:维持barmode='stack'配置以实现堆叠柱状图效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 10:35:22