Javascript Google可视化图表包装器选择图表元素

Javascript Google可视化图表包装器选择图表元素,javascript,charts,google-visualization,Javascript,Charts,Google Visualization,选中时,我似乎无法获取piechart切片的值。这是我的密码: var pieChart = new google.visualization.ChartWrapper( { chartType: 'PieChart', containerId: 'chart_div', dataTable: saleTypes, options: { title: 'Types of Sale', titleTextStyle: {

选中时,我似乎无法获取piechart切片的值。这是我的密码:

var pieChart = new google.visualization.ChartWrapper( {
    chartType: 'PieChart',
    containerId: 'chart_div',
    dataTable: saleTypes,
    options: { 
        title: 'Types of Sale',
        titleTextStyle: {
            fontSize: 18
        },
        width: 300,
        height: 300,
        chartArea: { width: '100%', height: '75%' },
        legend: {
            position: 'bottom'
        }
    }
} );

google.visualization.events.addListener( pieChart, 'ready', onReady );

function selectHandler() {
    var selectedItem = pieChart.getChart().getSelection()[0];
    if ( selectedItem ) {
        var value = data.getValue(selectedItem.row, selectedItem.column);
        alert('The user selected ' + value);
    }
}

function onReady() {
   google.visualization.events.addListener( pieChart.getChart(), 'select', selectHandler );
}

pieChartViolationTypes.draw();
我得到以下错误:


未捕获错误:无效的行索引未定义。应在[0-112]范围内。

尝试使用图表的数据表访问选择处理程序中的值

pieChart.getDataTable().getValue(selectedItem.row,1)

不确定在何处定义了
数据
,但如果图表绑定到筛选器,
然后需要使用图表正在使用的当前数据

function selectHandler() {
    var selectedItem = pieChart.getChart().getSelection()[0];
    if ( selectedItem ) {
        var value = pieChart.getDataTable().getValue(selectedItem.row, 1);
        alert('The user selected ' + value);
    }
}
注意:饼图可能只有一个系列列,对于
getSelection

编辑

如果图表上也应用了视图,
使用所选内容从
视图中获取行索引。行

pieChart.getView().rows[selectedItem.row]

var value = pieChart.getDataTable().getValue(pieChart.getView().rows[selectedItem.row], 1);

只是出于好奇,如果应用了视图(例如过滤视图),如何获取值?