traitsUI中的DataFrameEditor仅显示索引

时间:2017-04-05 23:39:35

标签: pandas enthought traitsui

我正在调查traitsui中的DataFrameEditor。我遇到了这种奇怪的行为,并希望有人能够确认和/或提供解决方案。

如果我在下面运行这个最小的例子:

import numpy as np
import pandas as pd

from traits.api import HasStrictTraits, Instance, Button

from traitsui.api import View, Item, VGroup

from traitsui.ui_editors.data_frame_editor import DataFrameEditor

class Foo(HasStrictTraits):

    do_it = Button(label='Do it')
    data = Instance('pandas.core.frame.DataFrame')

    view = View(
                VGroup(
                       Item('data', show_label=False,
                             editor=DataFrameEditor(editable=True)),
                       Item('do_it', show_label=False)
                       )
                )

    def _data_default(self):
        return pd.DataFrame()

    def _do_it_fired(self):
        self.data = pd.DataFrame({'a': np.arange(5),
                                  'b': np.arange(5)})

if __name__=='__main__':
    f = Foo()
    f.configure_traits()

然后,当我第一次点击Do it按钮时,我只看到数据帧的索引:

index only

这显然不对。如果我关闭窗口并重新运行e.configure_traits(),那么我会按预期看到完整的数据帧:

full dataframe

是个bug吗?我做错了什么?

0 个答案:

没有答案