Есть ли способ использовать hv.archive для Holoviews в Jupyter Lab? - PullRequest
2 голосов
/ 23 января 2020

Я пытаюсь использовать функцию HoloViews hv.archive в Jupyter Lab, но при запуске кода архив не создается.

Когда я запускаю:

hv.archive.auto()

df.testplot() # create holoviews plot

hv.archive.contents()

hv.archive.export()

Я получаю это : Javascript Error: IPython is not defined

При работе в Jupyter Notebook я не получаю сообщение об ошибке, и создается архивная папка, но я все еще не могу сгенерировать заархивированные графики.

Любой путь вперед будет быть высоко ценится. Спасибо!

1 Ответ

1 голос
/ 23 января 2020

В настоящее время hv.archive () не работает с Jupyter Lab, но оно должно работать с Jupyter Notebook.

Посмотреть этот github проблема:
https://github.com/holoviz/holoviews/issues/3570

Если я запускаю приведенный ниже код в Jupyter Notebook, он работает для меня.
Примечание: запустите код ниже не все сразу, а только по частям.
В противном случае, я думаю, что файловая система не может идти в ногу, и вы получаете ошибку.

import holoviews as hv

# you can also choose the bokeh backend, but
# no .svg image will be saved
hv.extension('matplotlib')

# start archiving automatically
hv.archive.auto()

# create a simple plot
hv.Curve(range(0,3))

# check contents of current archive
hv.archive.contents()

# export archive to disk
hv.archive.export()

# check status of export
hv.archive.last_export_status()

# recreate simple plot from archive    
import os
from holoviews.core.io import Unpickler
path = os.path.join(hv.archive.notebook_name, 'Curve.hvz')

if os.path.isfile(path):
    obj = Unpickler.load(open(path,"rb"))
    print(obj)

obj

Это как выглядит мой архив при экспорте на диск:

hv archive export to disk

Более подробную информацию об архивировании можно найти здесь:
http://holoviews.org/user_guide/Exporting_and_Archiving.html

...