使用事件触发器选项和Javascript代码进行R gvisTable预选

使用事件触发器选项和Javascript代码进行R gvisTable预选,javascript,r,google-visualization,Javascript,R,Google Visualization,在R中,我希望为gvisTable设置输出选择,以便突出显示特定的行或列 例如,我有以下代码: a <- as.data.frame(matrix(1:100, nrow=10)) plot(gvisTable(a)) 我能找到的唯一方法是将一些自定义JavaScript注入到调用gvisTable()创建的HTML中。您将无法像提供的示例那样使用EventListener——原因是当前实现的EventListener仅在单击表时执行。在此之前,您需要执行代码。看起来插入它的最佳位置是

R中,我希望为gvisTable设置输出选择,以便突出显示特定的行或列

例如,我有以下代码:

a <- as.data.frame(matrix(1:100, nrow=10))

plot(gvisTable(a))

我能找到的唯一方法是将一些自定义JavaScript注入到调用
gvisTable()
创建的HTML中。您将无法像提供的示例那样使用EventListener——原因是当前实现的EventListener仅在单击表时执行。在此之前,您需要执行代码。看起来插入它的最佳位置是返回的HTML的
jsDrawChart
部分。这是组装图表对象的JS表示的地方。在绘制图表后,您可以对对象进行其他调用

快速查看table对象的属性可以看出,如果使用正确的参数格式,Javascript中有一个很好的
setSelection()
函数

我做了以下工作:

mytab <- (gvisTable(a,chartid="myTable"))
#you just want to add the following line of JS before the close bracket in the jsDrawChart function.
# chart.setSelection([{'row':2, 'column':null}]);

#in my case, that turned out to be the following:
mytab$html$chart["jsDrawChart"] <- "\n// jsDrawChart\nfunction drawChartmyTable() {\n  var data = gvisDatamyTable();\n  var options = {};\noptions[\"allowHtml\"] = true;\n\n     var chart = new google.visualization.Table(\n       document.getElementById('myTable')\n     );\n     chart.draw(data,options);\n  chart.setSelection([{'row':2, 'column':null}]);   \n\n}\n  \n"
mytab
mytab <- (gvisTable(a,chartid="myTable"))
#you just want to add the following line of JS before the close bracket in the jsDrawChart function.
# chart.setSelection([{'row':2, 'column':null}]);

#in my case, that turned out to be the following:
mytab$html$chart["jsDrawChart"] <- "\n// jsDrawChart\nfunction drawChartmyTable() {\n  var data = gvisDatamyTable();\n  var options = {};\noptions[\"allowHtml\"] = true;\n\n     var chart = new google.visualization.Table(\n       document.getElementById('myTable')\n     );\n     chart.draw(data,options);\n  chart.setSelection([{'row':2, 'column':null}]);   \n\n}\n  \n"