2012-07-09 32 views
0

对于具有2个y轴的JQplot图表,我可以设置工具提示,但是当我将鼠标悬停在数据点上时,我需要知道工具提示属于哪个y轴。我需要这个,以便我可以显示工具提示后乘以适当的比例因子。我试过的代码如下所示。当我们将鼠标悬停在属于y2轴的数据点上时,我认为y将为空。但是y永远不会为空。针对多个y轴的JQplot工具提示

$("#"+sTargetId).bind('jqplotcustomDataMouseOver', 
        function (ev, seriesIndex, pointIndex, data) {  
        var chart_left = $("#"+sTargetId).offset().left, 
        chart_right = ($(window).width() - ($("#"+sTargetId).offset().left + $("#"+sTargetId).outerWidth())), 
        chart_top = $("#"+sTargetId).offset().top, 
         x = oPlot.axes.xaxis.u2p(data[0]), 
         y = oPlot.axes.yaxis.u2p(data[1]), 
         y2 = oPlot.axes.y2axis.u2p(data[1]);; 
         if(y===null|| y===undefined){ //this condition doesnt work 
         var tooltipDataYaxis = data[1]*scaleYaxis1; 
         var sYDisplay = this.sYAxis1MeasureName; 
         $('#tooltip').css({left:chart_left+x, top:chart_top+y, marginRight:chart_right}); 
         } 
         else{ 

         tooltipDataYaxis = data[1]*scaleYaxis2; 
         sYDisplay = this.sYAxis2MeasureName; 
         $('#tooltip').css({left:chart_left+x, top:chart_top+y2, marginRight:chart_right}); 
         } 

          $('#tooltip').html(

           '<span style="font-family: Arial;font-size:'+sTooltip+';font:bold;color:#000000;">'+ sYDisplay+': ' + tooltipDataYaxis +'</span>'); 
         $('#tooltip').show(); 
        }); 

     $("#"+sTargetId).bind('jqplotcustomDataUnhighlight', 
       function (ev, seriesIndex, pointIndex, data) { 
        $('#tooltip').empty(); 
        $('#tooltip').hide(); 
       }); 


    } 

回答

0

变量seriesIndex将帮助识别工具提示属于哪个系列。 :)

0

我刚刚玩jqplot第一次。很有趣。

在荧光笔插件jqplot.highlighter.js 我延长它在线336

elem.html(STR + “组分:” + neighbor.data [2]);

您可以使用Chrome开发人员工具在此处获取数据模型,并查看邻居对象的内容。 (范围变量>本地>邻居>数据)

这就是我做它的任何人。希望能帮助到你。