2017-12-21 43 views
0

RST 파일에서 'bokeh-plot'지시문을 사용하여 bokeh-plot 확장자를 사용하여 gh 페이지에 대한 일부 스핑크스 기반 문서를 호스팅하려고합니다. 생성 된 html과 관련된 JS를 제공하여 로컬 호스트 플라스크 서버로 잘 작동하는 대화 형 플롯을 얻을 수 있습니다.Bokeh plot gh-pages에 호스팅 된 sphinx html의 JS 경로

내 문제는 gh- 페이지에서 호스팅 할 때 플롯에 대해 생성 된 스크립트가 최상위 'scripts'폴더 (build/html/scripts)에 저장되고 생성 된 html src는 '/ scripts'로 설정됩니다. 이 문제는 상대 경로가 아닌이 경로에있는 것으로 보이며 전체 저장소 URL/스크립트 대신 상위 수준 gh-pages url/scripts로 해결됩니다. 적절한 상대 경로가되도록 html을 수동으로 편집 할 때 gh-pages에서 플롯이 올바르게 작동합니다. 이 문제를 해결하여 내 설명서에 대화 형 보케 플롯을 포함시키는 가장 좋은 방법은 무엇입니까?

답변

0

상대 경로를 통해 플롯 스크립트에 액세스 할 수있게 만드는 것은 불행히도 불행히도 작업의 덩어리이며 문제가 많고 핵심 개발자가 거의 없으므로 곧 순위를 매길 것으로 예상됩니다.

이 배포 된 GH 페이지 사이트에서이되는 절대 경로를 알고 있습니까? 그렇다면 (이 있어야한다 보인다?) 당신은 출력 생성하기 전에 다음 최선의 제안은 단지 대신 하드 코딩 "/scripts" 값의 해당 위치를 가리 키도록 보케의 지역 설치하여 편집하는 것입니다 :

https://github.com/bokeh/bokeh/blob/master/bokeh/sphinxext/bokeh_plot.py#L142

PR을 제출하면이 경로를 구성 가능하게 만들거나 상대 경로가 작동하도록 할 수 있습니다. 이러한 일에 관심이 있다면 프로젝트에 문의하십시오. GitHub

+0

감사합니다. 내 특정 유스 케이스에서 작동하도록하기위한 약간의 해킹 솔루션이 있습니다. 불행히도 나는 PR에 어울리는 우아한 방법을 찾을 시간이별로 없다. 내가 끝낸 일은 : 스크립트가'_process_script'에서 파싱되었을 때 경로의 앞에 알려진 문자열 ($ REL_PATH $)을 놓고 env의 '/'문자를 세 어서'run'에서 문서 깊이를 찾는 것입니다. docname을 입력 한 다음 태그가 지정된 문자열을 '../'의 적절한 수로 바꿉니다. 나는 지금 리눅스에서 문서를 만들고 있지만이 변경 사항을 가지고 gh 페이지 작업을하고있다. 필요한 경우 요점에 대한 세부 정보를 게시 할 수 있습니다. – BHall