2015-08-04 8 views
0

У меня есть график, который показывает, как так:JQuery Flot график график подсказка

graph

я хотел бы всплывающую подсказку для отображения «£ 1500 продаж на 31/07», а не 4.

Моя ось й генерируются следующим образом:

xaxis: { 
    tickColor: 'transparent', 
    tickDecimals: 0, 
    ticks: [[1,'27/07'],[2,'28/07'],[3,'29/07'],[4,'30/07'],[5,'31/07'],[6,'01/08'],[7,'02/08']] 
}, 

И код для генерации подсказки:

function showTooltip(x, y, contents) { 
    jQuery('<div id="tooltip">' + contents + '</div>').css({ 
     top: y - 16, 
     left: x + 20 
    }).appendTo('body').fadeIn(); 
} 

var previousPoint = null; 

jQuery('#graph-lines, #graph-bars').bind('plothover', function (event, pos, item) { 
    if (item) { 
     if (previousPoint != item.dataIndex) { 
      previousPoint = item.dataIndex; 
      jQuery('#tooltip').remove(); 
      var x = item.datapoint[0], 
       y = item.datapoint[1]; 
       showTooltip(item.pageX, item.pageY, '&pound;' + y + ' sales on ' + x); 
     } 
    } else { 
     jQuery('#tooltip').remove(); 
     previousPoint = null; 
    } 
}); 

важная линия:

var x = item.datapoint[0] 

Как я могу получить это прочитать клеща строку, а не значение?

Благодаря

ответ

0

Я понял это, я понял, что мне нужно, чтобы сохранить подпись оси Х в пределах точек данных:

var graphData = [{ 
     // Shop 
     data: [ [1, 1300, '27/07'], [2, 1600, '28/07'], [3, 1700, '29/07'], [4, 1500, '30/07'], [5, 1500, '31/07'], [6, 1200, '01/08'], [7, 1000, '02/08'] ], 
     color: '#71c73e' 
    }, { 
     // Net 
     data: [ [1, 900, '27/07'], [2, 1100, '28/07'], [3, 1550, '29/07'], [4, 1600, '30/07'], [5, 1800, '31/07'], [6, 1400, '01/08'], [7, 1300, '02/08'] ], 
     color: '#77b7c5', 
     points: { radius: 4, fillColor: '#77b7c5' } 
    } 
]; 

А потом заменить это:

var x = item.datapoint[0] 

С этим

var x = item.series.data[item.dataIndex][2] 
Смежные вопросы