Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用google Visualization仪表板和控件实现折线图滑块_Java_Javascript_Jquery_Google Api_Google Visualization - Fatal编程技术网

Java 使用google Visualization仪表板和控件实现折线图滑块

Java 使用google Visualization仪表板和控件实现折线图滑块,java,javascript,jquery,google-api,google-visualization,Java,Javascript,Jquery,Google Api,Google Visualization,我在使用google Visualization Controls实现滑块控件时遇到了一个问题。我已经实现了NumberArrangeFilter作为控件包装器。我有如下列的数据表 var dataTable = google.visualization.arrayToDataTable([ ['Year', 'Australia', 'china'], [2004, 1000, 400], [2005, 1170, 460],

我在使用google Visualization Controls实现滑块控件时遇到了一个问题。我已经实现了NumberArrangeFilter作为控件包装器。我有如下列的数据表

var dataTable = google.visualization.arrayToDataTable([
      ['Year', 'Australia', 'china'],
      [2004,  1000,      400],
      [2005,  1170,      460],
      [2006,  660,       1120],
      [2007,  1030,      540]
      [2008,  1030,      540]

    ]);
所有列都是数字类型。在绘制此图时,我得到了以数字格式显示的x轴数据,从中获得了参考并更正了此项

这是我的代码:

 var dashboard = new google.visualization.Dashboard( document.getElementById('dashboard_div'));
        var yearRangeSlider = new google.visualization.ControlWrapper({
          'controlType': 'NumberRangeFilter',
          'containerId': 'filter_div',
          'options': {
            'filterColumnIndex': 1,
            'width': '100%',
            'ui': { 'labelStacking': 'horizontal', 'format': { 'pattern':'####','fractionDigits':'0','groupingSymbol':'','showRangeValues':true }}
          },

        });
     // Create a Line chart, passing some options
        var LineChart = new google.visualization.ChartWrapper({
          'chartType': 'LineChart',
          'containerId': 'chart_div',
          'options': {
            'width': 900,
            'height': 500,
            'fontSize':11,
            'hAxis':{'slantedText':'true','direction':'1','format': { 'pattern':'0' }},
            'hAxis.gridlines.color':'#ccc',
            'hAxis': {
                gridlines: {
                    color: 'transparent'
                }
            }

          }
        });
        dashboard.bind(yearRangeSlider, LineChart);
        var dataViewNew = new google.visualization.DataView(dataTable);
           dataViewNew.setColumns([{calc: function(data, row) { 
           return data.getFormattedValue(row, 0); }, type:'string'}, 0,1]);

        dashboard.draw(dataViewNew); 
在这段代码中,我在datatable中添加了新列,它的类型为string

var dataViewNew = new google.visualization.DataView(dataTable);
           dataViewNew.setColumns([{calc: function(data, row) { 
           return data.getFormattedValue(row, 0); }, type:'string'}, 0,1]);
现在数据表是这样的

['Year' 'Year', 'Australia', 'china'],
      ['2004',2004,  1000,      400],
      ['2005',2005,  1170,      460],
      ['2006',2006,  660,       1120],
      ['2007',2007,  1030,      540]
      ['2008',2008,  1030,      540]
在此,绘制图表后,x轴以字符串格式出现,但图例中添加了一个新列。请建议如何从图例中删除新列


,0,1]
更改为
,1,2]
如果我更改为此,则过滤器将无法工作。我需要一个格式良好的过滤器,如图所示。你能用这个例子做一个JSFIDLE吗?