d3.js是否支持自定义html渲染节点?

d3.js是否支持自定义html渲染节点?,d3.js,D3.js,我计划使用d3.js来显示网络图。但是在浏览文档时,我觉得我们无法使用自定义html模板自定义节点,因为它是SVG。我说的对吗?。但我的问题仍然是告诉D3使用HTML、SVG和CSS将数据带入生活,这意味着HTML也用于呈现网络。因此,如果节点使用html进行渲染,我可以使用自定义html进行节点渲染吗?D3完全不限制您的渲染技术。您当然可以使用SVG、HTML或两者兼用。我不确定您计划如何创建网络图,但可能它将在整个图级别使用SVG。(我想不出一个用纯HTML显示连接的好方法。)如果是这样的话

我计划使用d3.js来显示网络图。但是在浏览文档时,我觉得我们无法使用自定义html模板自定义节点,因为它是SVG。我说的对吗?。但我的问题仍然是告诉D3使用HTML、SVG和CSS将数据带入生活,这意味着HTML也用于呈现网络。因此,如果节点使用html进行渲染,我可以使用自定义html进行节点渲染吗?

D3完全不限制您的渲染技术。您当然可以使用SVG、HTML或两者兼用。我不确定您计划如何创建网络图,但可能它将在整个图级别使用SVG。(我想不出一个用纯HTML显示连接的好方法。)如果是这样的话,你必须在整个SVG中嵌入HTML。这是可能的,请看,D3完全支持它。

因为我需要一个需要一些多行文本的网络图,所以对节点使用绝对定位的DIV元素,然后使用背景SVG层在它们之间绘制边要容易得多(浏览器也更支持)


我并没有太多的运气让外来对象在所有浏览器中正常工作

这里没有呈现外来对象,你能给一些其他的例子吗?我不能分享我使用的代码,但它是基本的。DIV和SVG容器作为具有相同比例/坐标的同级容器。首先添加SVG,使其成为背景,DIV具有透明背景。D3可以为节点添加position:absolute的子DIV元素,并且在SVG容器中为边(直线或路径)使用相同的x/y坐标。在绘制布局时,只需使用D3使它们保持同步。