首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >包含alpha- Altair熊猫数据的Altair图表

包含alpha- Altair熊猫数据的Altair图表
EN

Stack Overflow用户
提问于 2021-01-07 01:38:11
回答 1查看 63关注 0票数 1

我正在努力用altair绘制我的熊猫阿尔法优势数据,因为我不能以我想要的方式获得数据。

这就是我的alpha-vantage查询的结果:

现在我的代码是这样的:

代码语言:javascript
复制
context = locals()
source = data[0]['1a. open (USD)']
print(source[0])

context["chart"] = alt.Chart(source).mark_area(
    line={'color': 'black'},
    color=alt.Gradient(
        gradient='linear',
        stops=[alt.GradientStop(color='white', offset=0),
               alt.GradientStop(color='black', offset=1)],
        x1=1,
        x2=1,
        y1=1,
        y2=0
    )
).encode(
    alt.X('date:T'),
    alt.Y('price:Q')
).interactive()

当我运行代码时,我得到了这个错误:

代码语言:javascript
复制
altair.utils.schemapi.SchemaValidationError: Invalid specification

    altair.vegalite.v4.api.Chart->0, validating 'additionalProperties'

    Additional properties are not allowed (Timestamp('2018-05-13 00:00:00'), Timestamp('2019-07-18 
    00:00:00'), Timestamp('2018-11-09 00:00:00'), Timestamp('2020-10-17 00:00:00'), Timestamp('2018- 
    07-05 00:00
    ----- lots more here -----
    Timestamp('2020-05-02 00:00:00'), Timestamp('2018-05-08 00:00:00'), Timestamp('2018-10-05 
    00:00:00') were unexpected)

所以问题是如何将我的pandas数据作为两个数组获取,一个用于时间戳,另一个用于结束数据值!所以我可以这样做:

代码语言:javascript
复制
data = pd.DataFrame({'x': ['A', 'B', 'C', 'D', 'E'],
                 'y': [5, 3, 6, 7, 2]})
alt.Chart(data).mark_bar().encode(
    x='x',
    y='y',
)

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-01-07 02:01:23

source必须是pandas DataFrame;看起来您传递的是时间戳的元组。而是传递一个dataframe,您将不会看到此错误。

由于您没有包含有关如何生成data变量的完整示例,因此我无法提供更具体的建议。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65600686

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档