Javascript 谷歌图表排序与谷歌图表编辑器

Javascript 谷歌图表排序与谷歌图表编辑器,javascript,charts,google-visualization,Javascript,Charts,Google Visualization,请帮忙!我快疯了!我有一个用于谷歌图表的Javascript,它在同一个数据集上构建一个表和一个图表,当你对表进行排序时,图表上的值也会被排序。我还有一个打开谷歌图表编辑器的代码。。。它建立了自己的图表。我需要的是合并这两个函数。我需要构建一个表和一个图表(在我对表进行排序时会对其进行排序),当我打开编辑器时,我需要它编辑该图表(该图表仍将与表中的排序相链接),而不是构建一个新的图表 以下是我拥有的两个功能: function drawSort() { var data = new go

请帮忙!我快疯了!我有一个用于谷歌图表的Javascript,它在同一个数据集上构建一个表和一个图表,当你对表进行排序时,图表上的值也会被排序。我还有一个打开谷歌图表编辑器的代码。。。它建立了自己的图表。我需要的是合并这两个函数。我需要构建一个表和一个图表(在我对表进行排序时会对其进行排序),当我打开编辑器时,我需要它编辑该图表(该图表仍将与表中的排序相链接),而不是构建一个新的图表

以下是我拥有的两个功能:

function drawSort() {
    var data = new google.visualization.DataTable( <?= $jsonTable ?> );

    var formatter = new google.visualization.NumberFormat({
        prefix: '$'
    });
    formatter.format(data, 1); // Apply formatter to second column

    var view = new google.visualization.DataView(data);
    view.setColumns([0, 1]);

    var table = new google.visualization.Table(document.getElementById('table_s_div'));
    table.draw(view);

    var chart = new google.visualization.BarChart(document.getElementById('chart_s_div'));
    chart.draw(view);

    google.visualization.events.addListener(table, 'sort',

    function (event) {
        data.sort([{
            column: event.column,
            desc: !event.ascending
        }]);
        chart.draw(view);
    });
}

var chartEditor = null;

function loadEditor() {
    // Create the chart to edit.
    var data = new google.visualization.DataTable( <?= $jsonTable ?> );
    var wrapper = new google.visualization.ChartWrapper({
        chartType: 'LineChart',
        dataTable: data,
        options: {
            'title': 'Number of Newly Opened Roles per <?echo $_SESSION['
            Display ']?>',
                'legend': 'none',
        }
    });

    chartEditor = new google.visualization.ChartEditor();
    google.visualization.events.addListener(chartEditor, 'ok', redrawChart);
    chartEditor.openDialog(wrapper, {})
}

// On "OK" save the chart to a <div> on the page.
function redrawChart() {
    chartEditor.getChartWrapper().draw(document.getElementById('chart_s_div'));
}
函数drawSort(){
var data=newgoogle.visualization.DataTable();
var formatter=new google.visualization.NumberFormat({
前缀:“$”
});
formatter.format(数据,1);//将格式化程序应用于第二列
var view=newgoogle.visualization.DataView(数据);
view.setColumns([0,1]);
var table=new google.visualization.table(document.getElementById('table_s_div'));
表.绘制(视图);
var chart=new google.visualization.BarChart(document.getElementById('chart_s_div'));
图表。绘制(视图);
google.visualization.events.addListener(表'sort',
功能(事件){
data.sort([{
列:event.column,
描述:!event.asp
}]);
图表。绘制(视图);
});
}
var chartreditor=null;
函数loadEditor(){
//创建要编辑的图表。
var data=newgoogle.visualization.DataTable();
var wrapper=new google.visualization.ChartWrapper({
图表类型:“线条图”,
数据表:数据,
选项:{
“title”:“每个角色新打开的角色数”,
“图例”:“无”,
}
});
chartEditor=新的google.visualization.chartEditor();
google.visualization.events.addListener(图表编辑器'ok',重画图表);
openDialog(包装,{})
}
//在“确定”时,将图表保存到页面上的a。
函数重绘图表(){
chartEditor.getChartWrapper().draw(document.getElementById('chart_s_div'));
}