2014-11-05 12 views
1

Я пытаюсь встроить сюжет с его данными с помощью autoload_static в простую html-страницу, которую я хочу читать локально на своем компьютере. Из того, что я делаю в документации, мне нужно разместить файл .js в указанной папке и вставить тег в html. Но светлячок дает мне следующую ошибку: "не удалось загрузить библиотеку http://cdn.pydata.org/bokeh-114a47707b567971f835c5877d2be44ea4e57fef.min.js" pl.js: 21Bokeh не может загрузить bokeh из CDN

import numpy as np 
from bokeh.plotting import * 
from bokeh.objects import PanTool 
N = 80 

x = np.linspace(0, 4*np.pi, N) 
y = np.sin(x) 

pantool = PanTool(dimensions=["width", "height"]) 
plot = line(x,y, color="#0000FF", tools=['wheel_zoom','box_zoom', pantool], 
    name="line_example") 

from bokeh.resources import CDN 
from bokeh.embed import autoload_static 


js, tag = autoload_static(plot, CDN,"/Users/john/Desktop/Tests/js/pl.js") 

file = open("/Users/john/Desktop/Tests/js", "w")  
file.write(js) 
file.close() 

print(tag) 

И HTML-страницы:

<!DOCTYPE html> 
<html> 
<body> 

<h1> 
Hello World 
</h1> 

<p><script 
    src="/Users/john/Desktop/Tests/js/pl.js" 
    id="836fbd4f-68b5-4cdf-8a56-047c2a22af2a" 
    async="true" 
    data-bokeh-data="static" 
    data-bokeh-modelid="line_example" 
    data-bokeh-modeltype="Plot" 
    data-bokeh-loglevel="info" 
></script></p> 

</body> 
</html> 

ответ

1

Как вы установить Bokeh? Похоже, вы установили из GitHub checkout? (Это не стандартный номер версии Bokeh, это похоже на хэш GH). Стандартный объект ресурса resources.CDN пытается использовать текущую версию bokeh для определения версии BokehJS для загрузки с CDN. Только официальные выпущенные версии загружаются в CDN, поэтому Resources.CDN не будет полезен с установкой источника GH. Вы должны создать свой собственный Resource объект и передать в версии, которую вы хотите, что-то вроде:

myCDN = Resources(mode="cdn", version="0.6.1") 

, а затем передать, что autoload_script.

Однако, на данный момент не гарантирует, что новый, текущий мастер GH работает с ранее выпущенными версиями BokehJS. Поэтому нет никакой гарантии, что это будет работать, в общем. Моя сильная рекомендация - придерживаться официальных релизов Bokeh.

Если это официальный выпуск Bokeh (пакет conda или PyPI), то это серьезная ошибка упаковки, пожалуйста, напишите отчет по адресу https://github.com/bokeh/bokeh/issues с максимально возможной детализацией.

Смежные вопросы