代码之家  ›  专栏  ›  技术社区  ›  ShanN

如何格式化绘图指示器中的数字?

  •  1
  • ShanN  · 技术社区  · 2 年前

    我现在正在策划 go.Indicator 并且面临数字格式的问题。具体来说,我的代码如下

    fig.add_trace(
                go.Indicator(
                    mode = "delta",
                    value = df[df.columns[2]].values[-1],
                    domain = {'row': 1, 'column': 1},
                    delta = {"reference": df[df.columns[2]].values[-13], 
                             "valueformat": "f",
                             "suffix": "%"},
                    ),
                        row = 2,
                        col = 1
                        
                    )
    

    现在的数字是:

    go.Indicator

    原始数也等于0.999717。然而,我只想展示 0.99 相反我试着改变 "valueformat" = ".2f" or "2f 但它甚至是一个更长的数字。 如何更改 "valueformat" ?

    0 回复  |  直到 2 年前
        1
  •  0
  •   Derek O    2 年前

    绘图使用指定的d3格式 here 。要获得小数点后两位,您可以尝试 "valueformat": ".2" ,但在您的特定情况下,-0.999将四舍五入为-1,因此您可能需要小数点后3位。

    这里有一个简单的例子,原始数字是-0.98717,但我们将精度设为小数点后2位,因此显示为-0.99:

    import plotly.graph_objects as go
    
    fig = go.Figure()
    fig.add_trace(
        go.Indicator(
            mode = "delta",
            value = -0.98717,
            delta = {"reference": 0.0, 
                        "valueformat": ".2",
                        "suffix": "%"},
            ),
        )
    
    fig.show()
    

    enter image description here