D3.js,force-graph,不能显示节点的文本/标签

时间:2013-03-30 03:45:15

标签: graph d3.js data-visualization labels force-layout

我无法在d3.js中使用强制布局显示节点标签。

我正在尝试使用此示例http://d3js.org/d3.v3.min.js

我更新了只添加缩放的代码,如下所示:

var svg = d3.select("body").append("svg").attr("width", width).attr("height", height).append('svg:g').call(d3.behavior.zoom().on("zoom", redraw));

function redraw() {
    console.log("here", d3.event.translate, d3.event.scale);
    svg.attr("transform", "translate(" + d3.event.translate + ")" + " scale(" + d3.event.scale + ")");
    node.attr("transform", function(d) {
        return "translate(" + d.x + "," + d.y + ")";
    });
}

为什么不显示标签?

1 个答案:

答案 0 :(得分:4)

您需要单独添加文字:

node.append("text")
    .attr("dx", ".10em")
    .attr("dy", ".10em")
    .text(function(d) { return d.name; });

请参阅以下示例:

http://bl.ocks.org/mbostock/2706022

http://bl.ocks.org/mbostock/1153292