要变更Bokeh表格的行数,可以使用以下代码示例来解决:
from bokeh.io import show
from bokeh.models import ColumnDataSource, DataTable, NumberEditor, StringEditor, StringFormatter, NumberFormatter, SelectEditor, BooleanEditor, NumberFormatter
from bokeh.layouts import column
from bokeh.models.widgets import Button
from bokeh.events import ButtonClick
# 创建数据源
data = {'name': ['John', 'Emma', 'Mike'], 'age': [25, 30, 35]}
source = ColumnDataSource(data)
# 创建表格的列定义
columns = [
DataTable.Column(field='name', title='Name', editor=StringEditor(), formatter=StringFormatter(font_style='bold')),
DataTable.Column(field='age', title='Age', editor=NumberEditor(), formatter=NumberFormatter(format='0'))
]
# 创建表格
table = DataTable(source=source, columns=columns, editable=True, width=400, height=200)
# 创建按钮来变更行数
button = Button(label='Change Row Count', button_type='success', width=200)
# 定义按钮点击事件的处理函数
def change_row_count(event):
# 变更数据源的行数
new_data = {'name': ['John', 'Emma', 'Mike', 'Sarah', 'David'], 'age': [25, 30, 35, 28, 32]}
source.data = new_data
# 更新表格的行数
table.height = 50 + 25 * len(new_data['name'])
# 绑定按钮点击事件的处理函数
button.on_event(ButtonClick, change_row_count)
# 显示表格和按钮
layout = column(table, button)
show(layout)
运行上述代码,将显示一个初始包含3行的表格和一个按钮。点击按钮后,表格将更新为包含5行的新数据源。表格的高度也将根据行数的变化进行相应调整。
上一篇:变更/进化类型的用户定义构造函数签名(PL/SQL)
下一篇:变更的前置时间