python - Altair 置信区间图

标签 python plot altair

我希望使用 Altair 创建一个类似于附图的绘图,该图是使用 matplotlib 绘制的。基本上,一条绘制平均值的线和一个置信区间。

enter image description here

我的数据框看起来像这样。

dfr = pd.DataFrame(list(zip(mean, lower, upper)),
                       columns=["Mean", "Lower", "Upper"],
                       index=pd.RangeIndex(46, name="x"))

知道如何实现这一目标吗?我无法弄清楚 Altair 的语法。谢谢

最佳答案

您可以通过将线图和面积图分层来完成此操作。例如:

import altair as alt
import numpy as np
import pandas as pd

np.random.seed(9)
mean = np.random.randn(46).cumsum()
lower = mean - 2
upper = mean + 2

dfr = pd.DataFrame(list(zip(mean, lower, upper)),
                       columns=["Mean", "Lower", "Upper"],
                       index=pd.RangeIndex(46, name="x"))

line = alt.Chart(dfr.reset_index()).mark_line().encode(
    x='x',
    y='Mean'
)

band = line.mark_area(opacity=0.5).encode(
    x='x',
    y='Lower',
    y2='Upper'
)

band + line

enter image description here

关于python - Altair 置信区间图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64024612/

相关文章:

python - 将 python 可视化面板保存为 html

javascript - 如何将原始 javascript 对象转换为字典?

Python、Tkinter、tkFont : Label resize

python - 如何注释用 Prince 库绘制的散点

python - 在函数内调用 exec - NameError

python,绘图和c api

matlab - 在 Julia(或 Matlab)中绘制投资组合构成图

python - Seaborn:如何将垂直线添加到分布图 (sns.distplot)

python - 如何从 Altair 中的选定数据中检索属性?

python - 如何在 Altair 中设置标签文本大小?