Altair“4.1.0”返回一个空图表

Altair '4.1.0' returning an empty chart

我正在尝试在我的 Altair 图表中添加一个符号,以便用户可以通过颜色了解每条线在图表中代表什么,但是当我绘制它时,我收到一个没有我传递的数据的空图表。

同时我正在调试代码,我想问题出在行 color = alt.Color...

base = alt.Chart(new_df, title="Mean Control Chart").properties(width=600,height=500)

domain = ['Mean','LSC','LM','LIC','1 x S(+)','2 x S(+)','1 x S(-)','2 x S(-)']
range_ = ['black','red','green','red','blue','blue','blue','blue']

# Linha da media
media_chart = base.mark_line(point=True).encode(
    alt.X('amostra',type='quantitative', title='Samples', scale=alt.Scale(domain=(x_range_min_1,x_range_max_1))),
    alt.Y('media', type='quantitative', title='Mean', scale=alt.Scale(domain=(y_range_min_1,y_range_max_1))),
    color = alt.Color('Symbol',type='nominal', scale=alt.Scale(domain=domain, range=range_))
)

数据集

您不能使用“符号”作为图表颜色,因为它不是数据框中的一列。您需要先 reshape/melt df 才能创建此列,例如new_df.melt(id_vars=['amostra', 'media'], var_name='Symbol'] 根据 the pandas docs on reshaping.