D3.js,加载数据成功后,我看不到任何数据

时间:2015-11-13 06:55:25

标签: javascript php mysql

作为标题。
成功加载数据后,我看不到任何数据。但是在DevTool中,我可以看到数据加载成功。

更新:
如果我在transform="translate(350,165)中添加一些属性:<g>,那么我可以找到<circle>

数据库:MySQL的

使用Javascript:

    $.ajax({
        method: "POST",
        url: "data2.php",
        success: function(data) {
            json_data = JSON.parse(data);
            console.log(json_data);
            console.log(json_data.length);
            for(var x = 0; x < json_data.length; x++){
              console.log(json_data[x].Circles)
              $("svg > g").append(json_data[x].Circles);
              $("svg > g").append(json_data[x].arrows);
              console.log(json_data[x].arrows);
              $("svg > g").append(json_data[x].Links);
              console.log(json_data[x].Links)
            }
        },
        error: function(err, f) {
            console.log(err);
        }
    });

PHP:

<?php 
    $myquery = "
SELECT A1.circles Circles, A2.arrow arrows, A2.link Links from  `d3-map`.nodes A1, `d3-map`.links A2 
GROUP BY A1.id;
";
    $query = mysql_query($myquery);

    if ( ! $query ) {
        echo mysql_error();
        die;
    }

    $data = array();
    $query_row = mysql_num_rows($query);
    $data[] = mysql_fetch_assoc($query);

    for ($x = 0; $x < $query_row; $x++) {
        $data[] = mysql_fetch_assoc($query);
    }
    echo json_encode($data);  
    mysql_close($server);

这是开发工具(我的电脑上的打印屏幕): DevTool

1 个答案:

答案 0 :(得分:0)

嘿伙计们,我想我发现了问题!

似乎使用d3.js尝试获取php数据必须遵循d3.js的方式去。
所以,我修复了我的ajax代码使用d3.json

这是我的代码:
JSBin