簡體   English   中英

使用d3.json而不讀取文件

[英]Using d3.json without reading from file

我正在嘗試使用d3.js庫創建一個交互式圖形。 我想在從存儲的json文件或直接從字典(根據某些用戶輸入創建的字典)中將數據饋入d3對象之間進行切換。

要讀取我使用的文件

d3.json('/path/to/file.json')

在用戶輸入后,將創建字典d 我嘗試使用

user_file = json.dumps(d)
d3.json(user_file)

無濟於事。

我有一個解決方法-在用戶輸入時,使用json.dump(d, '/path/to/user_file.json') d3.json('/path/to/user_file.json') json.dump(d, '/path/to/user_file.json')創建一個user_file.json文件,並使用d3.json('/path/to/user_file.json') 除了感覺不那么優雅之外,這還增加了另一個問題,即新的json文件將被緩存。

有什么建議嗎? 我是javascript的新手,因此也歡迎您對“最佳做法”提出建議。

d3.json()通常具有兩個參數:url('/path/to/ d3.json() ')和將處理結果的函數,這些結果將不包含在示例中。 該處理程序通常是在d3.json()調用內聲明的匿名函數,但它可以是命名函數。 我將定義一個命名函數來處理json結果,然后使用相同的函數來處理在用戶輸入上創建的數據。

function resultHandler(error, data){
    ... do stuff w/ data ...
}

d3.json('/path/to/file.json', resultHandler);

function userInputHandler() {
   ... create data ...
   resultHandler(null, d);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM