Как открыть файл из рабочей области JupyterHub при использовании %%javascript magic?

#javascript #url #jupyter-lab #jupyterhub

#javascript #url #jupyter-lab #jupyterhub

Вопрос:

Я использую JupyterHub в сочетании с JupyterLab. У меня есть пользователь «test» и файл «data.csv» в рабочей области этого пользователя.

Я хотел бы использовать %%javascript magic и загрузить этот файл с помощью d3.js .

Однако URL-адрес «./data.csv» не работает.

=> Какой правильный относительный URL для загрузки файлов из рабочей области JupyterHub?

 %%html 
<div id = "root"/>
  

 %%javascript
//define plot method
window.plot = (d3)=>{
    d3.text('./data.csv', (error, raw) => {
        alert('loaded file');
    });
}
  

 %%javascript
//execute plot method
var d3Import = document.createElement('script')
d3Import.src = 'https://d3js.org/d3.v6.min.js';
d3Import.addEventListener('load', ()=>plot(d3));
document.body.appendChild(d3Import);
  

Похожие:

https://jupyterlab.readthedocs.io/en/stable/user/urls.html

Ответ №1:

Относительный URL-адрес — «./files/data.csv». Кроме того, у меня была проблема с асинхронностью, которую я решил:

 %%javascript
//define plot method
window.plot = async (d3)=>{
    var text = await d3.text('./files/data.csv');  
    console.log(text);  
}