2017-01-26 3 views
1

Приведенные численные значения по осям x и y, я хотел бы иметь возможность передавать в массиве строк, которые будут использоваться в x-axis 'valueformatter. Как и в случае для данной точки на графике, в массиве, который я мог бы показать, была бы соответствующая строка, и я бы просто использовал параметр row для извлечения строки из массива. (Я бы сортировал их перед построением графика). Возможно ли это без изменения самих диграфов?Пользовательские данные dygraphs.js для mouseover

ответ

0

Один из 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.