Je souhaite exporter mon HoloViews DynamicMap tel qu'il est affiché dans un bloc-notes Jupyter, mais il n'exporte que trois cadres dans le fichier HTML résultant. J'ai créé l'exemple de code suivant pour illustrer le problème que je rencontre, qui est une version simplifiée de l'exemple sur https://holoviews.org/reference/containers/bokeh/DynamicMap.html
import numpy as np
import holoviews as hv
hv.extension('bokeh')
def sine_curve(phase, freq=0.5):
xvals = [0.1* i for i in range(100)]
return hv.Curve((xvals, [np.sin(phase+freq*x) for x in xvals]))
dmap = hv.DynamicMap(sine_curve, kdims=['phase']).redim.range(phase=(0.,1.))
dmap # to render interactively in Jupyter notebook
hv.save(dmap, 'test.html')
Si je l'exécute dans un cahier Jupyter, le curseur affichera 11 diagrammes de phase différents (chaque déphasage de 0,1). Cependant, une fois que je l'ai enregistré sous test.html, il ne restituera que trois diagrammes de phase au total (0, 0,5, 1). Existe-t-il un moyen de rendre toutes les images du fichier HTML ?
Solution du problème
La solution était de remplacer .redim.range(phase=(0.,1.))
par .redim.values(phase=full_set_of_values)
where full_set_of_values = [0., 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.]
. Voir https://github.com/holoviz/holoviews/issues/5273 pour plus d'informations.
Aucun commentaire:
Enregistrer un commentaire