0
<?php
//Zoomable Partition Layout
//http://mbostock.github.io/d3/talk/20111018/partition.html
echo $data
?>
<div id="partition">
<script type="text/javascript">
var w = 690,
h = 700,
x = d3.scale.linear().range([0, w]),
y = d3.scale.linear().range([0, h]);
var vis = d3.select("#partition").append("div")
.attr("class", "chart")
.style("width", w + "px")
.style("height", h + "px")
.append("svg:svg")
.attr("width", w)
.attr("height", h);
var partition = d3.layout.partition()
.value(function(d) { return d.size; });
d3.json("flare.json" , function(root) {
var g = vis.selectAll("g")
.data(partition.nodes(root))
.enter().append("svg:g")
.attr("transform", function(d) { return "translate(" + x(d.y) + "," + y(d.x) + ")"; })
.on("click", click);
var kx = w/root.dx,
ky = h/1
我不想使用“d3.json(”flare.json“,function(root){”因为我用jQuery获取数据并将它保存在$ data中 因此,我想使用“json = JSON.parse('<'?php echo $ data?>');”但我不知道它是如何工作的。有人帮我吗?d3.js如何动态添加节点到树#2
'根= $ data'? –
PHP是一个服务器端语言,PHP代码都会转换为输出,以及产生的HTML页面。所以'<?PHP的echo $数据?>'有将其替换为JSON,然后在查看它之前通过Apache/PHP进行渲染。 – user568109