【发布时间】:2020-01-14 14:19:04
【问题描述】:
我想显示一个pandas dataframe,其中在每一行的开头都有一个Checkbox (ipywidget) 以了解用户正在选择哪一行。
我使用以下代码对Button 进行了第一次试用
import pandas as pd
from IPython.display import display, HTML
from ipywidgets import Button, HBox, VBox,widgets
import ipywidgets
from ipyleaflet import Map
mS2 = Map(center=(40.4, -3.7), zoom=6)
offlineS2 = ['true', 'false']
nameS2 = ['a','b']
df = pd.DataFrame({'Name': nameS2,'Offile': offlineS2})
# ideally I would need Checkbox not Button
button0 = widgets.Button(description='Click to display')
button1 = widgets.Button()
button2 = widgets.Button(description='Select')
dfW = ipywidgets.HTML(df.style.set_table_attributes('class="table"').render())
testup = HBox([VBox([button0,button1,button2]),dfW])
display(VBox([testup,mS2]))
但是,当我将代码widgets.Button 更改为widgets.Checkbox 时,虽然显示了,但复选框和数据框之间的距离太大。为什么会这样?
编辑
使用
`button1 = widgets.Button(indent=False)`
【问题讨论】:
-
自从我上次使用小部件以来已经有一段时间了,但我很确定有一个选项可以将复选框移动到任何方向
-
如果您仍有问题,请查看:github.com/quantopian/qgrid。否则,只需使用缩进删除margin-right。我将发布一个示例解决方案。
标签: python pandas ipython ipywidgets