从下拉列表中动态生成Google Chart类型

时间:2014-08-29 11:47:13

标签: asp.net vb.net google-visualization

我在我的网络应用程序中使用Google Charts,并希望使用下拉列表更改显示的图表。

下拉列表将图表类型存储在代码后面,我试图在var图表变量中插入VB.net变量。

var chart = new google.visualization。 datachart (document.getElementById(' chart_div')); chart.draw(数据,选项);

以粗体显示的值定义显示哪个图表(ColumnChart,LineChart等)

如何做到这一点最好?

2 个答案:

答案 0 :(得分:0)

简单的方法是根据您要绘制的图表设置图表:

var chart;
if(chartType== 'LineChart' ){
    chart= new google.visualization.LineChart(document.getElementById('chart_div')); 
}else if(chartType== 'BarChart' ){
    chart= new google.visualization.BarChart(document.getElementById('chart_div')); 
}// and so on

chart.draw(data, options);

对于更动态的方式,您需要使用chartWrapper,您可以使用字符串设置图表类型,或者执行:

chartWrapper.setChartType('LineChart');

答案 1 :(得分:0)

您可以通过多种不同方式处理此问题。 juvian指出了其中几个,但如果你想从ASP.net更直接的东西:

var chart = new google.visualization.<%=chartType %>(document.getElementById('chart_div'));

其中chartType是与图表类型匹配的字符串,例如"BarChart""LineChart"

如果你走这条路线,你应该在服务器端验证图表类型,这样你就不会试图访问不存在的图表类型。