我正在使用我自己的数据集在.json文件中修改其中一个d3示例的树结构。我有我自己的数据的工作副本。我现在想要做的是修改文本,以便它们链接到相应的URL。我发现,似乎没有太多的文件,关于如何做到这一点。d3.js树结构文本链接
这是我使用的例子树:http://bl.ocks.org/1249394
,从哪里开始有什么建议?
我正在使用我自己的数据集在.json文件中修改其中一个d3示例的树结构。我有我自己的数据的工作副本。我现在想要做的是修改文本,以便它们链接到相应的URL。我发现,似乎没有太多的文件,关于如何做到这一点。d3.js树结构文本链接
这是我使用的例子树:http://bl.ocks.org/1249394
,从哪里开始有什么建议?
最简单的方法是将链接放入JSON中的“name”元素中。然后您需要创建svg:a
元素而不是svg:text
元素的链接和svg:text
元素在里面。例如。行
nodeEnter.append("svg:text").text(function(d) { return d.name; });
成为
nodeEnter.append("svg:a").attr("xlink:href", function(d) { return d.name; })
.append("svg:text").text(function(d) { return d.name; });
你当然可以有链接的目标和文本单独的JSON元素。有关链接的更多详细信息,请参阅the SVG spec。
或者,您可以使用svg:foreignObject
为链接嵌入HTML。有关更多信息,请参阅here。
不知道,如果这仍然有用,但你只能使用1你的JSON。
只需返回d.something_else_than_name,并且此“something_else_than_name”必须在“name”之后的JSON中描述。
因此,对于例如
{"name": "stackoverflow", "link": "http://stackoverflow.com"},
,之后在你的页面你可以返回它,因为之前说:
.attr("xlink:href", function(d) { return d.link; })
希望这将是一个人帮助。
也许你可以试图编辑以前的答案...要去尝试自己。不管怎么说,还是要谢谢你。 – Gra
古代的答案,但这里有一个链接和图像的例子,我想我会分享:http://bl.ocks.org/mhauserr/6025921 –