1

维护人员注意:这个问题是关于bokeh.charts几年前删除的过时 API。有关现代散景中时间序列图表的示例,请参见此处:

https://docs.bokeh.org/en/latest/docs/gallery/range_tool.html


我正在尝试使用散景创建时间序列图。这是我第一次使用散景,也是我第一次与熊猫打交道。我们的客户收到对其产品的评论。我正在尝试创建一个图表,显示他们的平均评论评分如何随时间变化。

我们的数据库包含每次审查的日期。我们也有该日期的平均评论值。我需要绘制一条线,其中 x 轴是日期,y 轴是审查值范围(1 到 10)。

当我接受这个项目时,我认为这很容易。我错了。我找到了一个看起来不错的时间序列示例。不幸的是,该示例完全掩盖了创建解决方案最困难的部分。具体来说,它没有展示如何从源数据创建适当的数据结构。该示例是从 yahoo api 检索预构建的数据结构。我试过检查这些结构,但它们对我来说并不简单。

我找到了一个解释熊猫结构的页面。我有点难以理解。令我特别困惑的是如何在图中表示点而不必标记这些点。例如,y 轴应显示整数,但数据点不必与整数值相交。我找到的页面链接如下:

http://pandas.pydata.org/pandas-docs/stable/dsintro.html

有谁知道时间序列图表类型的工作示例,它举例说明了如何构建必要的数据结构?

更新: 感谢下面的答案,我只是将列表传递到行中。我没有想到我可以做到这一点,但效果很好。例如:

    date = [1/11/2011, 1/12/2011. 1/13/2011, 4/5/2014]
    rating = [4, 4, 5, 2]
    line(
        date,                                       # x coordinates
        rating,                                  # y coordinates
        color='#A6CEE3',                                    # set a color for the line
        x_axis_type = "datetime",                           # NOTE: only needed on first
        tools="pan,wheel_zoom,box_zoom,reset,previewsave"   # NOTE: only needed on first
    )
4

1 回答 1

4

您不必使用 Pandas,您只需提供一系列 x 值和一系列 y 值。这些可以是普通的 Python 数字列表、NumPy 数组或 Pandas 系列。这是另一个仅使用 NumPy 数组的时间序列示例:

http://docs.bokeh.org/en/latest/docs/gallery/color_scatter.html

编辑:链接更新

于 2014-09-24T00:53:12.007 回答