Javascript 使用重画从图表中获取数据,JSFIDLE提供

Javascript 使用重画从图表中获取数据,JSFIDLE提供,javascript,asp.net,.net,highcharts,jsfiddle,Javascript,Asp.net,.net,Highcharts,Jsfiddle,我想在highchart上添加一个重画函数,以显示一系列的新数据集,iv制作了按钮,但后面的代码很难执行 HTML: redraw方法在哪里,当单击按钮时,我将如何调用它来重新绘制新数据 我现在更新了这个 function redraw() { // Delete all the series. while (chart.series.length > 0) { chart.series[0].remove(false); } // Add the new series. cha

我想在highchart上添加一个重画函数,以显示一系列的新数据集,iv制作了按钮,但后面的代码很难执行

HTML:

redraw方法在哪里,当单击按钮时,我将如何调用它来重新绘制新数据

我现在更新了这个

function redraw() {


// Delete all the series.
while (chart.series.length > 0) {
  chart.series[0].remove(false);
}

// Add the new series.
chart.addSeries({ data: Highcharts.map(Array(12), Math.random) }, false);

// Redraw the chart.
chart.redraw();
但是,我需要从图表中获得相同的数据;我不需要删除序列,而是需要它从现有图表中添加数据,这样我就可以从vb.net代码中调用它

更新小提琴:


如果我理解正确,您的意思是按下按钮不会加载新系列。
如果是这样,那是因为您正在设置
单击
处理程序中的
更改
处理程序的按钮。这意味着在注册之前你必须点击B或C收音机按钮。将它从
更改
处理程序中移出,它就会工作。

您可以使用setData()函数,而不是删除和添加新的序列。如果使用addSeries(),则不需要使用redraw(),因为addSeries()包含了redraw函数

使用redraw(),因为addSeries()包含了redraw函数


是的,这是可行的,但我需要它从vb.net连接它,以便可以从服务器获取数据,所以我需要将该功能放在RegisterClient ScriptBlock中,你知道怎么做吗
function loadA(chart) {
    chart.xAxis[0].update({
        categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
    });
    chart.yAxis[0].setTitle({
        text: "kHw"
    });
    chart.addSeries({
        name: 'Rainfall11',
        type: 'column',
        color: '#08F',
        data: [100, 200, 300, 400, 100, 200, 0, 0, 0, 0, 0, 0]
    });
    chart.addSeries({
        name: 'Rainfall2',
        type: 'column',
        color: '#808000',
        data: [100, 200, 300, 400, 100, 200, 0, 0, 0, 0, 0, 0]
    });
    chart.addSeries({
        name: 'Rainfall3',
        type: 'column',
        color: '#FFA500',
        data: [100, 200, 300, 400, 100, 200, 0, 0, 0, 0, 0, 0]
    });
}
$(function() {
    var chart = new Highcharts.Chart({
        chart: {
            renderTo: 'container',
            type: 'column'
        }
    });
function redraw() {


// Delete all the series.
while (chart.series.length > 0) {
  chart.series[0].remove(false);
}

// Add the new series.
chart.addSeries({ data: Highcharts.map(Array(12), Math.random) }, false);

// Redraw the chart.
chart.redraw();