如何使用 plotly 绘制自定义误差线?

How to draw custom error bars with plotly?

我有一个数据框,其中一列描述 y 轴值,另外两列描述置信区间的上限和下限。我想使用这些值来绘制误差线。现在我知道 plotly 提供了可能性 to draw confidence intervals (使用 error_yerror_y_minus 关键字参数)但不是我需要的逻辑,因为这些关键字被解释为加法和减法从 y 值。相反,我想直接定义上下位置:

例如,我如何使用 plotly 和这个示例数据框

import pandas as pd
import plotly.express as px

df = pd.DataFrame({'x':[0, 1, 2],
                   'y':[6, 10, 2],
                   'ci_upper':[8,11,2.5],
                   'ci_lower':[5,9,1.5]})

制作这样的情节?

import pandas as pd
import plotly.express as px

df = pd.DataFrame(
    {"x": [0, 1, 2], "y": [6, 10, 2], "ci_upper": [8, 11, 2.5], "ci_lower": [5, 9, 1.5]}
)


px.bar(df, x="x", y="y").update_traces(
    error_y={
        "type": "data",
        "symmetric": False,
        "array": df["ci_upper"] - df["y"],
        "arrayminus": df["y"] - df["ci_lower"],
    }
)