是否有方法可以更改jqPlot圖形每個點上的文本。因此,而不是每個點顯示其正常值,可以改變爲別的東西。我圖上的每個點代表不同的數據。例如,我想要顯示按月分解測試的學生數量。但不是工具提示說我想讓它顯示平均測試結果的數量。更改顯示jqPlot工具提示的內容
是否有可能改變工具提示文本?
感謝
是否有方法可以更改jqPlot圖形每個點上的文本。因此,而不是每個點顯示其正常值,可以改變爲別的東西。我圖上的每個點代表不同的數據。例如,我想要顯示按月分解測試的學生數量。但不是工具提示說我想讓它顯示平均測試結果的數量。更改顯示jqPlot工具提示的內容
是否有可能改變工具提示文本?
感謝
首先,這不是你的問題的具體解決方案,但它可以作爲一個可能的方法。
我已經實現了使用pointLabels
plugin上jqplot類似的結果。
這裏是你可以做什麼,
的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
我發現你問的具體問題的解決方案。實際上有一種方法來顯示自定義工具提示,但它在任何地方都沒有很好的文檔記錄。
這裏是你如何能做到這一點。首先你必須包括highlighter plugin。然後在繪圖選項中設置與此相似的熒光筆選項。
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 here。