d3.js多系列折线图工具提示问题

时间:2016-03-07 20:22:39

标签: javascript d3.js

我有一个关于此链接示例的工具提示问题D3.JS: Multiseries line chart with mouseover tooltip在此示例中,工具提示仅显示y轴上的数据,这些数据是华氏度。但在我的项目中,我还想查看未在x和y轴上显示的数据。

在这个例子中,我根据上面链接中的代码对第84行进行了更改,以生成摄氏度(°C)。如何在单个工具提示中将工具提示同时显示华氏度和摄氏度? [see fiddle][2] https://jsfiddle.net/xn1sLbf4/3/ 在这里,我只是想插入一个“列”数据。 就我而言,'摄氏'不是我可以根据y轴数据计算的。它可能是部门名称,ID等。

有人知道怎么做吗?任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:3)

工具提示的文字设置在第250-251行:

d3.select(this).select('text')
  .text(y.invert(pos.y).toFixed(2));

因此,无论您传递给.text()方法,这些工具提示都将显示。要显示两个温度单位,您可以将该代码修改为类似

var fahrenheit = y.invert(pos.y);
var celsius = (fahrenheit - 32) * 5/9;
d3.select(this).select('text')
  .text(fahrenheit.toFixed(1) + "F / " + celsius.toFixed(1) + "c");