2

我很难过,因为d34raphael工具上的文档不多。

我正在尝试使用 raphael从 d3.js 重现此示例: http ://bl.ocks.org/d/1249394/。这个想法是能够将其运行到不支持 svg 的 ie8 中。

我最关心的是用 raphael 代码替换“g”svg 节点。

例如如何将这些 statemetns 转换为 d34raphael:

var node = vis.selectAll("g.node")
   .data(nodes, function(d) { return d.id || (d.id = ++i); });

或者

var nodeEnter = node.enter().append("g")
    .attr("class", "node")
    .attr("transform", function(d) { return "translate(" + source.y0 + "," + source.x0 + ")"; })
    .on("click", click);

我已经阅读了关于 d34raphael 的文档,但它没有用。

谢谢您的帮助。

4

1 回答 1

1

拉斐尔不使用 g 元素,但有一些集合的概念。d34raphael 直接使用它:

paper.setStart()
...
paper.setFinish().transform(["t", margins.top, margins.left]);

但这对于直接翻译 d3 代码不是很有用。我建议你扁平化你的数据和所有逻辑来定位你的元素,而不是让你的元素有一个组的孩子。

于 2012-08-23T18:47:41.250 回答