我可以访问图表中的选定数据吗?

时间:2013-01-24 14:46:16

标签: google-apps-script google-visualization

我创建了一个包含Google Apps脚本的用户界面,可以在TableChart和PieChart等Charts对象中显示数据。

图表对象允许用户选择饼图的一部分和表格中的多行。我希望我的代码能够知道图表中选定的数据是什么。

我有办法做到这一点吗? 如果不是,我将填写GAS问题跟踪器中的功能请求。

由于

亨利

2 个答案:

答案 0 :(得分:2)

是。请参阅getSelection()

的文档
  

getSelection()[可选]

     

可选择通过想要让您的可视化来公开   访问图形中当前选定的数据。

selection_array getSelection()
     

<强>返回

     

selection_array所选对象的数组,每个对象描述一个   用于创建可视化的基础表中的数据元素   (DataView或DataTable)。每个对象都有属性行和/或   列,包含所选项的行和/或列的索引   在底层的DataTable中。如果row属性为null,则为   选择是一个列;如果列属性为null,那么   选择是一排;如果两者都是非null,则它是特定数据   项目。您可以调用DataTable.getValue()方法来获取值   所选项目。检索到的数组可以传入   为setSelection()。

     

示例

function myClickHandler(){
  var selection = myVis.getSelection();


  for (var i = 0; i < selection.length; i++) {
    var item = selection[i];
    if (item.row != null && item.column != null) {
      message += '{row:' + item.row + ',column:' + item.column + '}';
    } else if (item.row != null) {
      message += '{row:' + item.row + '}';
    } else if (item.column != null) {
      message += '{column:' + item.column + '}';
    }
  }
  if (message == '') {
    message = 'nothing';
  }
  alert('You selected ' + message);
}

答案 1 :(得分:0)

我关闭了这个问题,因为现在很清楚,目前没有办法使用GAS访问图表中的选定数据。

此处填写了一项功能请求http://code.google.com/p/google-apps-script-issues/issues/detail?id=2351

功能请求已被接受。实施新功能后,我将编辑此答案。

干杯,

亨利