2017-06-03 40 views
2

我對html,d3js或javascript沒有太多瞭解,但根據Udacity中的某些課程,我可以將d3js加載到在Web開發人員控制檯中輸入此代碼的任何網站:不能運行d3js到網站(jupyter筆記本)

var script = document.createElement('script'); 
script.type = 'text/javascript'; 
script.src = 'https://d3js.org/d3.v4.min.js'; 
document.head.appendChild(script); 

看起來非常簡單,它已經與我嘗試過的每一頁,除了我的jupyter筆記本。該腳本被附加在<head>標籤中,但它具有非常低的不透明度,當我嘗試運行某些d3js代碼時,它不起作用(運行d3.select("p");給出ReferenceError: d3 is not defined)。有沒有其他解決方法?

+1

你說你「不能加載d3js」,但你說「腳本被附加」 - 所以它*可以*加載。 「[...]它具有非常低的不透明度」 - >這可能是您真正的問題,但要回答它,我們需要更多相關細節。 –

+0

@le_m你是對的,寫得很糟糕,只是編輯它。 – Ryunaq

回答

2

這是因爲你需要使d3全球化。我在單元格中做的是這樣的。 Jupyter已經要求加載。

%%javascript 
require.config({ 
    paths: { 
     d3: "https://d3js.org/d3.v4.min" 
    } 
}); 

require(["d3"], function(d3) { 
    window.d3 = d3; 
}); 
+0

它的工作,我想通過網絡瀏覽器控制檯運行d3,而不是通過一個單元(所以我可以使用greasemonkey),你的代碼也適用於這個!謝謝。 – Ryunaq