YeoLab / flotilla

Reproducible machine learning analysis of gene expression and alternative splicing data
http://yeolab.github.io/flotilla/docs
BSD 3-Clause "New" or "Revised" License
121 stars 26 forks source link

Widgets not working #346

Open fontclos opened 7 years ago

fontclos commented 7 years ago

Running

import flotilla
study = flotilla.embark(flotilla._shalek2013)
study.interactive_pca()

yields

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-10-48f2964b363a> in <module>()
----> 1 study.interactive_pca()

/Users/fran/miniconda2/envs/flotilla_env/lib/python2.7/site-packages/flotilla/visualize/ipython_interact.pyc in interactive_pca(study, data_types, sample_subsets, feature_subsets, color_samples_by, featurewise, x_pc, y_pc, show_point_labels, list_link, plot_violins, scale_by_variance, savefile)
    132                               list_link=list_link, plot_violins=plot_violins,
    133                               color_samples_by=color_samples_by,
--> 134                               scale_by_variance=scale_by_variance)
    135 
    136     def save(w):

/Users/fran/miniconda2/envs/flotilla_env/lib/python2.7/site-packages/ipywidgets/widgets/interaction.pyc in __call__(self, _InteractFactory__interact_f, **kwargs)
    486         #    def f(*args, **kwargs):
    487         #        ...
--> 488         w = self.widget(f)
    489         try:
    490             f.widget = w

/Users/fran/miniconda2/envs/flotilla_env/lib/python2.7/site-packages/ipywidgets/widgets/interaction.pyc in widget(self, f)
    402             The function to which the interactive widgets are tied.
    403         """
--> 404         return self.cls(f, self.opts, **self.kwargs)
    405 
    406     def __call__(self, __interact_f=None, **kwargs):

/Users/fran/miniconda2/envs/flotilla_env/lib/python2.7/site-packages/ipywidgets/widgets/interaction.pyc in __init__(self, _interactive__interact_f, _interactive__options, **kwargs)
    160             getcallargs(f, **{n:v for n,v,_ in new_kwargs})
    161         # Now build the widgets from the abbreviations.
--> 162         self.kwargs_widgets = self.widgets_from_abbreviations(new_kwargs)
    163 
    164         # This has to be done as an assignment, not using self.children.append,

/Users/fran/miniconda2/envs/flotilla_env/lib/python2.7/site-packages/ipywidgets/widgets/interaction.pyc in widgets_from_abbreviations(self, seq)
    258             if not (isinstance(widget, ValueWidget) or isinstance(widget, fixed)):
    259                 if widget is None:
--> 260                     raise ValueError("{!r} cannot be transformed to a widget".format(abbrev))
    261                 else:
    262                     raise TypeError("{!r} is not a ValueWidget".format(widget))

ValueError: (u'expression', u'splicing') cannot be transformed to a widget
fontclos commented 7 years ago

Installed flotilla in a conda enviroment, then created a jupyter kernel with

python -m ipykernel install --user --name flotilla_env --display-name "Python (flotilla)"