d3:使用锚点元素作为图表标签
d3: use anchor elements as chart labels
我刚开始使用D3和SVG,但我还没有发现任何关于如何添加超链接的明确信息。下面是一些代码,我必须在D3条形图中的条形图左侧写标签。是否有一个好的示例可以将这些标签转换为超链接(比如rangeData中的对象具有href和name/label属性)?我搜索了一下,但除了添加锚元素的svg规范之外,没有得到更多的信息。
chart.selectAll(".bar.barLabel")
.data(rangeData)
.enter().append("text")
.attr("class", "bar")
.attr("x", 0)
.attr("y", function (d, i) { return height(i) + barHeight(y, i) / 2; })
.attr("dx", -20)
.attr("dy", ".35em")
.attr("text-anchor", "end")
.text(function (d) { return d.label; });
您可以使用a
元素来实现这一点,与HTML本身非常相似。将内容包装在a
元素中,并提供链接目标作为具有xlink
命名空间的href
属性。
chart.selectAll("a")
.data(rangeData)
.enter()
.append("a")
.attr("xlink:href", function(d) { return d.href; })
.append("text")
.text(function (d) { return d.label; });
或者,您可以使用foreignObject
元素将HTML直接嵌入到SVG中。
相关文章:
- Ckeditor-plugin:插入虚假元素add不情愿<p>标签前后
- 单击切换单选按钮和标签元素
- 如何隐藏没有类的标签元素
- 如何访问嵌套在 h1 标签中的 img 标签元素
- 如何使用 jQuery 在标签的 for 属性中使用子字符串获取标签元素的值
- 将标签元素的第一个字母大写
- 我可以在 html 输入标签元素中获取变量 ID 吗?
- 如何在移动设备上隐藏分区标签元素
- 如何在javascript中检查当前的标签元素
- 删除JavaScript中的所有标签元素
- 在 jquery 中找到标签元素并附加新元素
- 创建新的html标签(元素)
- 使用jQuery替换页面上的标签元素属性
- 根据需要使用循环和标签元素验证表单
- Jets.js error: Uncaught error: error !找不到搜索标签元素
- AngularJS:有没有一种方法可以在标签元素上创建双向绑定,这样我就可以动态地将它附加到对象上
- jQuery:如何获取使用选择器找到的整个标签元素
- jQuery:基于单独的标签元素添加属性
- 附加/前置选择与兄弟()不工作与HTML标签元素
- 在不添加新标签/元素的情况下向属性添加描述(用于屏幕阅读器)