【发布时间】:2013-08-29 14:38:06
【问题描述】:
我正在尝试实现一个包含多条线的 D3 图表,当将鼠标悬停在图表上时,该图表将每个点的样本大小显示为工具提示。我有两个数组的数据,但我不知道如何访问相对于图表上鼠标位置的第二个数组。
如何使用正确的索引访问第二个数组中的值? 这是一个显示我需要修复的jsfiddle:js第60行的http://jsfiddle.net/fMXvv/1/,或如下所示的div.html方法:
graph.append("svg:path").attr("d", line(data[0])).style("stroke", "black").style("stroke-width", 2)
.on("mouseover", function (d, i) {
div.transition()
.duration(200)
.style("opacity", .9);
div.html("n = " + data[0][i])
.style("left", (d3.event.pageX) + "px")
.style("top", (d3.event.pageY - 28) + "px");
困难在于图表有多个系列(3行),因此知道x坐标是不够的。
【问题讨论】:
-
我想过使用 d3.event.pageX 和一些奇怪的比例来映射到正确的坐标,但它似乎太复杂了......
-
你可以试试bl.ocks.org/DStruths/9c042e3a6b66048b5bd4的方法,但是你可能需要重构你的图数据
标签: javascript arrays d3.js data-visualization