将图例名称添加到JQPlot工具提示并在工具提示中正确格式化日期

我想将绘图的图例名称添加到鼠标上方的工具提示中。 我在条形图上使用了这个jqplot工具提示的解决方案之一。

具体来说我使用了以下function:

function tooltipContentEditor(str, seriesIndex, pointIndex, plot) { // display series_label, x-axis_tick, y-axis value return plot.series[seriesIndex]["label"] + ", " + plot.data[seriesIndex][pointIndex]; } 

但是,我遇到的问题是它没有使用图例名称“我的图例名称”,而是使用JQPlot默认的“系列1”或“系列5”(编号取决于系列位置)。

第二个问题是,一旦我开始使用上述function,我就会丢失日期格式。 所以我得到一个数字,例如123672378328,而不是它被转换为我在tickOptions中指定的格式。

我生成图表的代码如下:

 var plot; function buildChart(chartDivId, graphData, chartTitle, graphSeriesNames, labelNames) { var id = "#" + chartDivId; $(id).empty(); var seriesLine = { lineWidth:1, markerOptions: { show:false } }; plot = $.jqplot(chartDivId, graphData, { title: chartTitle, axes: { xaxis: { label:'Date', renderer:$.jqplot.DateAxisRenderer, tickOptions: { formatString:'%b  %#d  %H:%M' } }, yaxis: { label: 'Parameter Values', tickOptions: { formatString:'%.2f' }, labelRenderer: $.jqplot.CanvasAxisLabelRenderer, labelOptions : { angle: 270, fontFamily: 'Arial, Verdana, Helvetica', fontSize: '8pt' }, autoscale: true }, }, seriesDefaults: { markerOptions: { show: true, style:'filledCircle', size: 4.5 } }, highlighter: { show: true, sizeAdjust: 7.5, tooltipContentEditor:tooltipContentEditor //new code added to attempt to add legend name to mouse over tool tip }, cursor: { show: true, zoom: true, showTooltip: false }, legend: { labels: labelNames , show: true, location: 's', renderer: $.jqplot.EnhancedLegendRenderer, rendererOptions: { numberColumns: 10, numberRows: 5, seriesToggle: 900, disableIEFading: false }, marginTop: '100px', marginBottom: '100px', placement: 'outside' } } ); 

}

进一步更新:

在有点愚蠢并深入挖掘JQPlot的绘图对象之后,我意识到传递给tooltipContentEditor方法的str变量具有我需要的东西。 所以以下是解决方案:

 function tooltipContentEditor(str, seriesIndex, pointIndex, plot) { // display series_label with x and y values value return plot.legend.labels[seriesIndex] + ", " + str; } 

没有提供任何帮助或建议,所以我想我会花几个小时试图修复后提供我找到的解决方案。