如何在clickgraphitem上获取amchart堆叠条的标签

时间:2017-09-26 08:46:46

标签: javascript amcharts

我想在图表点击事件上获得Label,我正在使用amchart堆叠条。

  • 示例:
    • 当我点击第1栏的图表1:8 时,我得到图1
    • 当我点击第1栏的图表2:5 时,我得到图表2

下面是图表的链接,我也添加了我的代码:Stackbar chart

chart.addListener("clickGraphItem", DashBoardClick); 
    function DashBoardClick(event) {
    alert(event.item.category);
}

1 个答案:

答案 0 :(得分:1)

假设您的意思是图表的标题,您可以通过documentation中所述的事件参数中的graph对象访问它,然后访问图表{{3} } property,即event.graph.title



var chart = AmCharts.makeChart("chartdiv",
    {
      "type": "serial",
      "categoryField": "category",
      "startDuration": 1,
      "categoryAxis": {
        "gridPosition": "start"
      },
      "trendLines": [],
      "graphs": [
        {
          "balloonText": "[[title]] of [[category]]:[[value]]",
          "fillAlphas": 1,
          "id": "AmGraph-1",
          "title": "graph 1",
          "type": "column",
          "valueField": "column-1"
        },
        {
          "balloonText": "[[title]] of [[category]]:[[value]]",
          "fillAlphas": 1,
          "id": "AmGraph-2",
          "title": "graph 2",
          "type": "column",
          "valueField": "column-2"
        }
      ],
      "guides": [],
      "valueAxes": [
        {
          "id": "ValueAxis-1",
          "stackType": "regular",
          "title": "Axis title"
        }
      ],
      "allLabels": [],
      "balloon": {},
      "legend": {
        "enabled": true,
        "useGraphSettings": true
      },
      "titles": [
        {
          "id": "Title-1",
          "size": 15,
          "text": "Chart Title"
        }
      ],
      "dataProvider": [
        {
          "category": "category 1",
          "column-1": 8,
          "column-2": 5
        },
        {
          "category": "category 2",
          "column-1": 6,
          "column-2": 7
        },
        {
          "category": "category 3",
          "column-1": 2,
          "column-2": 3
        }
      ]
    }
  );

chart.addListener('clickGraphItem', function(event) {
  alert(event.graph.title);
})

<script src="//www.amcharts.com/lib/3/amcharts.js"></script>
<script src="//www.amcharts.com/lib/3/serial.js"></script>
<script src="//www.amcharts.com/lib/3/themes/light.js"></script>

<div id="chartdiv" style="width: 100%; height: 350px;"></div>
&#13;
&#13;
&#13;