dygraphs.js 鼠标悬停自定义数据

dygraphs.js custom data for mouseover

给定 x 轴和 y 轴上的数值,我希望能够传入一个字符串数组,以在 x 轴的值格式化程序中使用。比如,对于图表上的给定点,我可以在数组中显示一个相应的字符串,我将简单地使用 row 参数从数组中获取一个字符串。 (我会在构建图表之前对它们进行排序)。这是否可以在不修改 dygraphs 本身的情况下实现?

其中一个parameters to valueFormatter是行索引。所以你可以用 valueFormatter 回调来做到这一点:

vals = [
  'Foo',
  'Bar',
  'Baz',
  'Quux'
];
new Dygraph(
    document.getElementById("graph"),
    "X,Y,Z\n" +
    "1,0,3\n" +
    "2,2,6\n" +
    "3,4,8\n" +
    "4,6,9\n",
    {
      axes: {
        x: {
          valueFormatter: function(v, opts, seriesName, dygraph, row, col) {
            return vals[row];
          }
        }
      }
    });

参见 fiddle