获取系列标签名称以显示为文本

时间:2012-08-20 13:00:59

标签: jqplot

我有条形图。请找到下面的条形图代码。还可以找到附加图像,该图像是给定脚本的结果。

$(document).ready(function(){
    var s1 = [2, 6, 7, 10];
    var s2 = [7, 5, 3, 2];
    var s3 = [14, 9, 3, 8];
    var tickx = ["aaa", "bbb", "ccc"];
    plot3 = $.jqplot('chart3', [s1, s2, s3], {
        stackSeries: true,
        captureRightClick: true,
        seriesDefaults:{
            renderer:$.jqplot.BarRenderer,
            rendererOptions: {
                highlightMouseDown: true    
            },
            pointLabels: {show: true}
        },
        legend: {
            show: true,
            location: 'e',
            placement: 'outside'
        },
       axes: { 
           xaxis: {
              renderer: $.jqplot.CategoryAxisRenderer,
              ticks: tickx
          }
       }
    });

    $('#chart3').bind('jqplotDataRightClick', 
        function (ev, seriesIndex, pointIndex, data) {
            $('#info3').html('series: '+seriesIndex+', point: '+pointIndex+', data: '+data);
        }
    ); 
});

右键单击栏,它将显示右键单击栏的值。

  

右键单击:系列:2,指向:1,数据:2,9。

这里,数据值(数据:2,9)中的值2是x轴系列号。而不是系列名称,我想得到图表中使用的刻度。

在上面的脚本中,给出的勾选是:["aaa", "bbb", "ccc"];

我希望输出显示为

如果用户单击系列1轴。结果应该是

  

You Right Clicked:series:2,point:1,data:1,7,series label:aaa。

请帮助我实现这一目标。提前谢谢。

此致

安东尼

1 个答案:

答案 0 :(得分:2)

阅读上面的评论。如果您在右键单击xaxis类别位置后,请使用:

$('#chart3').bind('jqplotDataRightClick', 
        function (ev, seriesIndex, pointIndex, data) {
            $('#info3').html('series: '+seriesIndex+', point: '+pointIndex+', data: '+data + ' category label: ' + plot3.axes.xaxis.ticks[pointIndex]);
        }
    ); 

在您的事件处理程序中。