在 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()
输出: