d3 js - loading json without a http get

前端 未结 3 1366
无人共我
无人共我 2020-11-29 18:57

I am learning d3. There are certain ways of loading the data in d3 js. But all of them seem to make a HTTP GET. In my scenario, I already have the json data in a string. How

相关标签:
3条回答
  • 2020-11-29 19:20

    According to this example:

    http://phrogz.net/JS/d3-playground/#StockPrice_HTML

    Here they are storing the graph data within the variable $data, and setting it via the .data($data) function.

    I'd apply this method to whatever graph you are using.

    0 讨论(0)
  • 2020-11-29 19:33

    The answer from chumkiu worked great for me but needed a couple of tweaks - in the latest version of the d3 bubble chart, you need to define root rather than json, as in

     root = JSON.parse( myjson );
    

    Alternatively, you could replace "root" with "json" in the rest of the code of course. :-)

    For anyone coming to this answer with questions about d3 node-link trees that utilize local data sets, this answer worked great for me - many thanks to the contributors on this page.

    0 讨论(0)
  • 2020-11-29 19:41

    Simply replace d3.json call with

    json = JSON.parse( myjson );
    

    IE:

    var myjson = '{"name": "flare","children": [{"name": "analytics","children": [{"name": "cluster","children": [{"name": "MergeEdge", "size": 10 }]}]}]}';
    
    // d3.json("/path/flare.json", function(json) { #delete this line
    
        json = JSON.parse( myjson ); //add this line
    
        //rendering logic here
    
    //} #delete this line
    

    UPDATE 09/2013

    Original code has changed. So varname json should be root:

    // d3.json("flare.json", function(error, root) { #delete this line
    
        root = JSON.parse( myjson ); //add this line
    
        //rendering logic here
    
    //} #delete this line
    
    0 讨论(0)
提交回复
热议问题