4

一部の同僚がインタラクティブにデータにアクセスできるように、Jupyter Notebook を作成しようとしています。さまざまな基準を使用してデータをフィルタリングできるようにする一連のウィジェットを提供したいと考えています。

主にそれは美しく機能しますが、2 つのウィジェット間の間隔を調整することはできません。

こちらの手順に従ってみましたが、2 つのボタンは常に隣り合っています。

class Dashboard(object):
    def __init__(self):
        item_layout = Layout(flex='1 1 auto',
                             width='auto')

        toggle = widgets.ToggleButtons(
            options=["Foo", "Bar"],
            value="Foo",
            description="Foobar:",
            disable=False,
            layout=item_layout,
        )

        check = widgets.Checkbox(
            value=True,
            description="Checked",
            disabled=False,
            layout=item_layout,
        )

        box_layout = Layout(display='flex',
                            flex_flow='row',
                            justify_content='space around',
                            width='500px',
                            button_layout='solid',
                            )

        buttons = widgets.Box(children=[
            widgets.interactive(self._set_foobar, foobar=toggle, layout=item_layout),
            widgets.interactive(self._set_checked, checked=check, layout=item_layout),
        ],
            layout=box_layout)

        display(buttons)

    def _set_foobar(self, foobar):
        self._foo = foobar == 'Foo'

    def _set_checked(self, checked):
        self._checked = bool(checked)

次に、Jupyter ノートブックを開いて次の操作を行うとします。

import dashboard
y = dashboard.Dashboard()

以下を生成します。

ここに画像の説明を入力

ウィジェットをインタラクティブにしないと、children=[toggle, check]完全に機能します。

ここに画像の説明を入力

インタラクティブなウィジェット間のスペースを調整する方法はありますか?

4

1 に答える 1