【问题标题】:Display a pandas data frame with Bokeh使用 Bokeh 显示 pandas 数据框
【发布时间】:2016-09-25 00:32:04
【问题描述】:

有没有用 Bokeh 显示数据框的好方法?我有一堆基于表格的文本,我想与一些图表一起显示和动态更新,但我还没有找到一个很好的方法来做到这一点。

【问题讨论】:

    标签: python bokeh


    【解决方案1】:

    【讨论】:

      【解决方案2】:

      你应该看看 bokeh.models.widgets.DataTable

      http://docs.bokeh.org/en/latest/docs/user_guide/interaction.html#data-table

      例子:

      from datetime import date
      from random import randint
      
      from bokeh.models import ColumnDataSource
      from bokeh.models.widgets import DataTable, DateFormatter, TableColumn
      from bokeh.io import output_file, show, vform
      
      output_file("data_table.html")
      
      data = dict(
              dates=[date(2014, 3, i+1) for i in range(10)],
              downloads=[randint(0, 100) for i in range(10)],
          )
      source = ColumnDataSource(data)
      
      columns = [
              TableColumn(field="dates", title="Date", formatter=DateFormatter()),
              TableColumn(field="downloads", title="Downloads"),
          ]
      data_table = DataTable(source=source, columns=columns, width=400, height=280)
      
      show(vform(data_table))
      

      您可以使用自己的 DataFrame 交换数据,例如:

      data = dict(df[['first', 'second']])
      

      如果列名不同,请将列变量更改为:

      columns = [
              TableColumn(field="first", title="First"),
              TableColumn(field="second", title="Second"),
          ]
      

      【讨论】:

        【解决方案3】:

        要将 Pandas DataFrame DF 转换为 Bokeh 中的表格,您可以使用列表解析来设置表格:

        from bokeh.models.widgets import DataTable, DateFormatter, TableColumn
        
        Columns = [TableColumn(field=Ci, title=Ci) for Ci in DF.columns] # bokeh columns
        data_table = DataTable(columns=Columns, source=ColumnDataSource(DF)) # bokeh table
        
        show(data_table)
        

        这假设您希望 Bokeh 列与 DF 列名称匹配,但如果需要,可以轻松修改。

        【讨论】:

          猜你喜欢
          • 2017-11-20
          • 2019-04-24
          • 1970-01-01
          • 2019-08-14
          • 2015-09-12
          • 2015-11-04
          • 2016-01-06
          • 2020-07-24
          相关资源
          最近更新 更多