2016-04-01 26 views
21

Stworzyłem tabelę z interaktywnym suwakiem, który pozwala mi przełączać się między różnymi okresami na moim stole. To działało przez kilka ostatnich dni, do dzisiaj, kiedy ponownie uruchomiłem notatnik, pasek suwaka się nie pokazuje. Brak komunikatów o błędach. Kod wydaje się działać poprawnie, ponieważ pojawia się tabela, ale pasek po prostu się nie pojawia. Nie zmieniłem też kodu, ponieważ pracowałem nad oddzielną częścią mojego notesu.iPywidgets IPython nie wyświetla

Próbowałem wielu podejść, w tym wyszukiwania w tym miejscu, ale wciąż nie był w stanie wymyślić rozwiązanie. Zastanawiałem się, czy ktokolwiek zmierzył się z podobnym problemem, i ma jakieś rozwiązanie tego.

Poniżej znajduje się mój fragment kodu. Wszystko, co wcześniej, miało na celu wyłącznie przekazanie moich danych do żądanej postaci w celu ich zestawienia.

from IPython.display import display 
from ipywidgets import widgets, interactive 
v = interactive(by_q, quarter=(['q1y2015', 'q2y2015', 'q3y2015', 'q4y2015']), days=(1, 180)) 
display(v) 
+0

Czy mógłbyś dodać swoją funkcję 'by_q', by zrobić pełny przykład? Normalnie nie musisz nawet przypisywać zmiennej 'interactive 'do zmiennej, a następnie wywoływać' display (v) '. – roadrunner66

+0

Miałem ten sam dziwny błąd z "interakcją" kilka dni temu ... niestety zniknął tak tajemniczo, jak się pojawił. Nie mam na to rozwiązania. Być może spróbuj "% reset -f" na górze notebooka? – nluigi

+0

@nluigi Nie jestem pewien, czy to były jakieś konflikty pakietów, które mam, ponieważ eksploruję Plot.ly na tym samym notesie, jak również. Moim aktualnym, bardzo nieefektywnym sposobem radzenia sobie z tą sytuacją, kiedy powstaje, jest skopiowanie komórek do nowego notatnika, a suwak znów będzie działał na nowym notebooku. Niestety, jak próbuję szybko poruszać się z moimi danymi, nie mam zbyt wiele czasu na debugowanie sytuacji od teraz. Wypróbuję twoją sugestię, kiedy pojawi się ponownie. Dzięki! –

Odpowiedz

44

Dzięki nowej wersji ipywidgets, wpadłem na ten problem, ale potem znalazłem na their github readme że teraz trzeba podążać

pip install ipywidgets 

z

jupyter nbextension enable --py widgetsnbextension 

To wyczyściło problem dla mnie.

1

myślę plot.ly importuje funkcję o nazwie display który zastępuje funkcję display z ipython. Spróbuj zmienić kolejność importu lub po prostu importować funkcję pod inną nazwą

+0

Witaj @nluigi, w końcu udało Ci się rozwiązać swój problem? Musiałem dołączyć spisek do wykresu do mojego notatnika do ipythona. Nawet usuwając funkcje 'display()', refaktoryzując mój kod zgodnie z zaleceniami, moje dzisiejsze slapy na notebooka ipython się zepsuły. Skopiowałem cały skrypt do innego notatnika, a moje suwaki znów działały. Trochę kłopotów, ale przynajmniej rozwiązuje mój obecny problem. Nie jestem pewien, czy jest to problem z pamięcią podręczną, czy cokolwiek w mojej przeglądarce. Używam MacBooka Pro i używam notebooków w Chrome. –

+0

@CliffChew - nie, przepraszam, próbowałem odtworzyć podobny problem, ale miałem, ale nie mogłem. Nie wydaje się to jednak problemem z pamięcią podręczną. Czy próbowałeś skontaktować się z autorami plot.ly i zapytać o ten błąd? – nluigi

+0

@nuligi Dzięki za odpowiedź! Obecnie sytuacja nie jest dla mnie krytyczna, ponieważ muszę przejść do innych aspektów mojej pracy. Moja metoda "kopiująca", choć nieporęczna, jest pomostem, na którym mogę teraz żyć. Mogę zajrzeć do tego za jakiś czas i zaktualizuję go tutaj, jeśli będę miał jakiekolwiek postępy w tej sprawie. –

1

To może być głupi błąd, ale w przypadku korzystania z wirtualnych środowisk, należy pamiętać o tym, co dzieje się skąd.

Możliwe, że Jupyter będzie prawidłowo działał z poziomu obecnego środowiska za każdym razem, gdy zajdzie taka potrzeba, lub może mieć środowisko źródłowe, z którego zawsze uruchamiasz Jowiusza, którego użyjesz we wszystkich swoich środowiskach.

W tym ostatnim przypadku należy upewnić się, że włączono rozszerzenie wartości rzeczywistej dla aktualnie uruchomionego Joupera, zamiast omyłkowego uruchomienia polecenia z poziomu aktywnego środowiska.

+1

to rozwiązało mój problem !! dziękuję: D: D – jerpint