Променете какво показва подсказката на jqPlots

Има ли начин да промените текста във всяка точка на jqPlot графика. Така че вместо всяка точка да показва нормалната си стойност, може ли тя да бъде променена на нещо друго. Всяка точка от моята графика представлява различни данни. Например искам да покажа броя на учениците, които са взели тестове през годината, разбити по месеци. Но вместо подсказката да казва сумата, искам да показва средния резултат от теста.

Възможно ли е да промените текста на подсказките?

Благодаря


person Wesley Skeen    schedule 01.10.2012    source източник


Отговори (2)


Първо, това не е точното решение на вашия въпрос, но може да се използва като възможно заобиколно решение.

Постигнах подобен резултат на jqplot с помощта на pointLabels добавка.

Ето какво можете да направите,

Приставката pointLabels показва съдържанието на масива от данни, който се използва за изчертаване на диаграмата. Но има опция да се упомене кой индекс на масива от данни трябва да се използва за показване на етикета на точката.

pointLabels: {
    show: true,
    seriesLabelIndex: 2
}

Така че това, което можете да направите, е за всяка точка във вашия масив от данни да включите какъвто и да е детайл, който искате да бъде показан в диаграмата.

Но имайте предвид, че това не се появява като подсказка, а като етикет на точка.

Създадох малък пример, за да разберете това.

http://jsfiddle.net/GayashanNA/q9mH8/

Също така бях създал публикация в блог, описваща какво направих по моя проект, прочетете я тук, за да получите повече информация, ако смятате, че това решение може да ви помогне.

http://gayashan-a.blogspot.de/2012/10/tracking-mouse-position-on-your_2.html

person GayashanNA    schedule 05.10.2012

Намерих решението за точния проблем, който зададохте. Всъщност има метод за показване на персонализирана подсказка, но той не е добре документиран никъде.

Ето как можете да го направите. Първо трябва да включите приставката за маркиране. След това в опциите за графика задайте опциите за маркер, подобни на тези.

highlighter: {
    show: true,
    tooltipContentEditor: tooltipContentEditor
}

Тук tooltipContentEditor е външна функция, която може да се използва за извеждане на персонализиран HTML като подсказка.

След това можете да върнете изчислената средна стойност или друга желана стойност от тази функция.

function tooltipContentEditor(str, series_index, point_index, plot) {
    len = plot.data[series_index].length;
    total = 0;
    for (i = 0 ; i < len; i++) {
        total += parseFloat(plot.data[series_index][i][1]);
    }
    return "average:"+total/len;
}

Можете да получите достъп до всичките си данни, като използвате параметрите, предадени с функцията.

Разгледайте моя jsFiddle тук.

person GayashanNA    schedule 11.12.2012