Altair图形中的颜色“未定义”

时间:2019-03-21 15:34:13

标签: python vega vega-lite altair

我正在使用altair python库创建具有vega-lite规范的html文件。我遇到一个问题,在我的绘图中没有显示颜色。这是代码:

import altair as alt
import pandas
data = 'Test.csv' #this contains three columns: Rating, Frequency, and typ, where 'typ' is either E or O.
a = alt.Chart(data).mark_bar().encode(
    alt.X('Rating', type = 'ordinal'),
    alt.Y('Frequency',type = 'quantitative'),
    alt.Color('typ', type = 'nominal')
)
a.save('altairtest.html')

我得到一个没有颜色的图形,图例以“典型”字样出现,但只有蓝色,文字显示为“ undefined”。

我目前在SimpleHttpsServer上本地工作。这可能是原因吗?对我来说,这种方式比使用jupyter容易。谢谢

1 个答案:

答案 0 :(得分:0)

这通常表明您的数据文件中存在问题。我可以使用如下的Data.csv文件来重现您的问题:

Rating,Frequency, typ
0,1,O
1,2,E

然后生成的图表如下所示:

enter image description here

请注意标题中typ之前的空格:空格在CSV文件中很重要:这意味着您的列名为" typ",而不是"typ"

如果您从CSV文件的标题中删除空格,则相同的代码将为您提供:

Rating,Frequency,typ
0,1,O
1,2,E

enter image description here

确保您的字段完全与数据列匹配,并且图表应能按预期工作。