Charts 我想要一张带有x轴组合值的谷歌图表

Charts 我想要一张带有x轴组合值的谷歌图表,charts,google-api,google-visualization,Charts,Google Api,Google Visualization,我得到了这样的图表--> 但我想要谷歌图表和组合x轴,就像这样--> 这是我的密码: google.charts.load('current', {'packages':['bar']}); google.charts.setOnLoadCallback(drawChart); function drawChart() { var data = google.visualization.arrayToDataTable([ ["BusinessUnit", "

我得到了这样的图表--> 但我想要谷歌图表和组合x轴,就像这样-->

这是我的密码:

google.charts.load('current', {'packages':['bar']});
google.charts.setOnLoadCallback(drawChart);

function drawChart() {
  var data = google.visualization.arrayToDataTable([
               ["BusinessUnit", "Year", "AvgEmpCost"],
               ["BU-1", 2014, 119329],
               ["BU-1", 2015, 125542],
               ["BU-1", 2016, 120894],
               ["BU-1", 2017, 130776],
               ["BU-1", 2018, 141465],
               ["BU-1", 2019, 153028],
               ["BU-2", 2014, 130722],
               ["BU-2", 2015, 131218],
               ["BU-2", 2016, 131451],
               ["BU-2", 2017, 134897],
               ["BU-2", 2018, 138432],
               ["BU-2", 2019, 142061],
  ]);

  var options = {
    chart: {
      title: 'buspentamt',

    }
  };

  var chart = new google.charts.Bar(document.getElementById('columnchart_material'));

  chart.draw(data, google.charts.Bar.convertOptions(options));
}

要生成相关图表,您需要每年的系列列,
数据表将需要类似于以下的格式

var data = google.visualization.arrayToDataTable([
  ["BusinessUnit", "2014", "2015", "2016"],
  ["BU-1", 119329, 125542, 120894],
  ["BU-2", 130722, 131218, 131451],
]);
不确定数据是如何生成的,
但是我们可以使用数据视图将行转换为列,
然后使用
功能聚合数据。
这将避免必须修改后端查询

有关示例,请参见以下工作代码段

google.charts.load('current',{packages:['bar']});
google.charts.setOnLoadCallback(drawChart);
函数绘图图(){
var data=google.visualization.arrayToDataTable([
[“业务单位”、“年度”、“平均成本”],
[“BU-1”,2014,119329],
[“BU-1”,2015,125542],
[“BU-1”,2016,120894],
[“BU-1”,2017,130776],
[“BU-1”,2018,141465],
[“BU-1”,2019,153028],
[“BU-2”,2014,130722],
[“BU-2”,2015年,131218],
[“BU-2”,2016,131451],
[“BU-2”,2017年,134897],
[“BU-2”,2018年,138432],
[“BU-2”,2019年,142061年],
]);
变量选项={
图表:{
标题:“buspentamt”
},
身高:400
};
//初始化列数组
var aggColumns=[];
var viewColumns=[0];
//每年生成视图和agg列
data.getDistinctValues(1).forEach(函数(年份,索引){
//为年份添加视图列
viewColumns.push({
计算:函数(dt,行){
如果(dt.getValue(第1行)==年){
返回dt.getValue(第2行);
}
返回null;
},
标签:年份,
键入:“数字”
});
//添加agg列
推({
聚合:google.visualization.data.sum,
列:索引+1,
标签:年份,
键入:“数字”
});
});
//设置视图列
var view=newgoogle.visualization.DataView(数据);
view.setColumns(viewColumns);
//按业务单位列出的agg视图
var aggData=google.visualization.data.group(
看法
[0],
聚合柱
);
var chart=new google.charts.Bar(document.getElementById('columnchart_material');
//使用数据绘制图表
绘制(aggData,google.charts.Bar.convertOptions(选项));
}


此方法适用于我正在尝试使用折线图的所有图表,但图表不会出现@whitehat您可以检查浏览器控制台中的错误(大多数浏览器上为F12)——您使用的是材质折线图吗?-->
google.charts.Line
——确保包含
'Line'
包——或者如果是经典图表-->
google.visualization.LineChart
——确保包含
'corechart'
包……我有如下数据:[“业务单元”,“年份”],[“BU-1”,2014年],“BU-1”,2015年],“BU-1”,2016年],“BU-1”,2017年],[“BU-1”,2018年],“BU-1”,2019年],“BU-2”,2014年],“BU-2”,2015年],“BU-2”,2016年],“BU-2”,2017年],“BU-2”,2018年],“BU-2”,2019年],“BU-2”,我如何为这些数据绘制图表@WhiteHatyes我想要图表来计算每年的年数bu@WhiteHati有10张图表我想保存在仪表板上,具有添加图表、保存、删除、调整大小和拖放(html、js、css)等功能,如元数据库仪表板。感谢您的帮助@WhiteHat