📜  在 Plotly 中创建误差线 - Python

📅  最后修改于: 2022-05-13 01:54:26.389000             🧑  作者: Mango

在 Plotly 中创建误差线 - Python

Plotly 是一个Python库,用于设计图形,尤其是交互式图形。它可以绘制各种图形和图表,如直方图、条形图、箱线图、散布图等等。它主要用于数据分析和财务分析。 plotly 是一个交互式可视化库。

Plotly 中的误差线

对于表示 2D 数据点的函数,例如 px.scatter、px.line、px.bar 等,误差线作为列名给出,它是 error_x(对于 x 位置的误差)和 error_y(对于y 位置的误差)。误差线是数据的图形表示交替,用于图表以暗示报告容量的错误或不确定性。

示例 1:在此示例中,我们将使用tips() 数据集绘制一个简单的错误图。

Python3
import plotly.express as px
  
  
df = px.data.tips()
df["error"] = df["total_bill"]/100
  
fig = px.scatter(df, x="total_bill", y="day", color="sex",
                 error_x="error", error_y="error")
fig.show()


Python3
import plotly.express as px
  
df = px.data.tips()
df["e"] = df["total_bill"]/100
  
fig = px.bar(df, x="total_bill", y="day", color="sex",
             error_x="e", error_y="e")
fig.show()


Python3
import plotly.express as px
  
  
df = px.data.tips()
df["error"] = df["total_bill"]/100
df["W_error"] = df["total_bill"] - df["tip"] 
  
fig = px.scatter(df, x="total_bill", y="day", color="sex",
                 error_x="error", error_y="W_error")
fig.show()


Python3
import plotly.graph_objects as go
x_data = [1, 2, 3, 4]
y_data = [3, 5, 2, 6]
  
fig = go.Figure(data = go.Scatter(
        x= x_data,
        y= y_data,
        error_y = dict(
              
              # value of error bar given in data coordinates
            type ='data',
            array = [1, 2, 3,4],
            visible = True)
    ))
fig.show()


Python3
import plotly.express as px
import plotly.graph_objects as go
import numpy as np
  
X = np.linspace(-1, 1, 100)
Y = np.sinc(X)
  
x = [-0.89, -0.24, -0.0, 0.41, 0.89, ]
y = [0.36, 0.75, 1.03, 0.65, 0.28, ]
  
fig = go.Figure()
fig.add_trace(go.Scatter(
    x=X, y=Y,
    name='error bar'
))
  
fig.add_trace(go.Scatter(
    x=x, y=y,
    mode='markers',
    name='measured',
    error_y=dict(
        type='constant',
        value=0.1,
        color='green',
        thickness=1.5,
        width=3,
    ),
    error_x=dict(
        type='constant',
        value=0.2,
        color='blue',
        thickness=1.5,
        width=3,
    ),
    marker=dict(color='green', size=8)
))
  
fig.show()


输出:

示例 2:

Python3

import plotly.express as px
  
df = px.data.tips()
df["e"] = df["total_bill"]/100
  
fig = px.bar(df, x="total_bill", y="day", color="sex",
             error_x="e", error_y="e")
fig.show()

输出:

上面的例子我看起来有些复杂,但是一旦你放大它,你就会更准确地理解图表。

示例 3:在此示例中,我们将看到非对称误差条,当结果存在非线性相关性时,就会出现非对称误差。

Python3

import plotly.express as px
  
  
df = px.data.tips()
df["error"] = df["total_bill"]/100
df["W_error"] = df["total_bill"] - df["tip"] 
  
fig = px.scatter(df, x="total_bill", y="day", color="sex",
                 error_x="error", error_y="W_error")
fig.show()

输出:

示例 4:在此示例中,我们将看到对称误差条,对称平均绝对百分比误差是基于百分比误差的准确度度量。

Python3

import plotly.graph_objects as go
x_data = [1, 2, 3, 4]
y_data = [3, 5, 2, 6]
  
fig = go.Figure(data = go.Scatter(
        x= x_data,
        y= y_data,
        error_y = dict(
              
              # value of error bar given in data coordinates
            type ='data',
            array = [1, 2, 3,4],
            visible = True)
    ))
fig.show()

输出:

示例 5:在此示例中,我们将看到如何使用错误栏的属性对错误栏进行着色和样式设置。

Python3

import plotly.express as px
import plotly.graph_objects as go
import numpy as np
  
X = np.linspace(-1, 1, 100)
Y = np.sinc(X)
  
x = [-0.89, -0.24, -0.0, 0.41, 0.89, ]
y = [0.36, 0.75, 1.03, 0.65, 0.28, ]
  
fig = go.Figure()
fig.add_trace(go.Scatter(
    x=X, y=Y,
    name='error bar'
))
  
fig.add_trace(go.Scatter(
    x=x, y=y,
    mode='markers',
    name='measured',
    error_y=dict(
        type='constant',
        value=0.1,
        color='green',
        thickness=1.5,
        width=3,
    ),
    error_x=dict(
        type='constant',
        value=0.2,
        color='blue',
        thickness=1.5,
        width=3,
    ),
    marker=dict(color='green', size=8)
))
  
fig.show()

输出: