谷歌组合图中当前数据的平均线
Average line for current data in a Google ComboChart
大家好,伙计们目前正在使用组合图,并试图获取所有值的平均值,并在图表上显示一条线来表示每个代理的平均值。
我已经做了一些挖掘,我确实尝试使用了一种资源,但它抛出了错误,我一直在努力寻找解决方案。
下面是我的图表外观的 JSFiddle 示例,但我需要每个代理的所有值的平均线,并显示每个代理的平均线。
JSFiddle
下面是JS小提琴的JS代码:
jQuery(function($) {
google.charts.load('current', {
callback: drawChartAverage,
packages: ['corechart']
});
function drawChartAverage() {
var result = [
['Agents', 'Minutes'],
['1', 44],
['2', 22],
['3', 11],
['4', 34]];
var options = {
title: 'Average Minutes cross Agents',
vAxis: {
title: 'Minutes'
},
hAxis: {
title: 'Agent'
},
seriesType: 'bars',
series: {
1: {
type: 'line'
}
}
};
var chartdata = new google.visualization.arrayToDataTable(result);
var chartAvg = new google.visualization.ComboChart(document.getElementById('chartAvg'));
chartAvg.draw(chartdata, options);
}
})
我需要它看起来像我尝试使用的示例,但这样做并不快乐。
但是在让你知道我想做什么!
使用提供的示例...
google.charts.load('44', {
callback: drawChartAverage,
packages: ['corechart']
});
function drawChartAverage() {
var result = [
['Agents', 'Minutes'],
['1', 44],
['2', 22],
['3', 11],
['4', 34]
];
var chartdata = new google.visualization.arrayToDataTable(result);
// Create a DataView that adds another column which is all the same (empty-string) to be able to aggregate on.
var viewWithKey = new google.visualization.DataView(chartdata);
viewWithKey.setColumns([0, 1, {
type: 'string',
label: '',
calc: function (d, r) {
return ''
}
}])
// Aggregate the previous view to calculate the average. This table should be a single table that looks like:
// [['', AVERAGE]], so you can get the Average with .getValue(0,1)
var group = google.visualization.data.group(viewWithKey, [2], [{
column: 1,
id: 'avg',
label: 'average',
aggregation: google.visualization.data.avg,
'type': 'number'
}]);
// Create a DataView where the third column is the average.
var dv = new google.visualization.DataView(chartdata);
dv.setColumns([0, 1, {
type: 'number',
label: 'average',
calc: function (dt, row) {
// round average up / down
return Math.round(group.getValue(0, 1));
}
}]);
var options = {
title: 'Average Minutes cross Agents',
vAxis: {
title: 'Minutes'
},
hAxis: {
title: 'Agent'
},
seriesType: 'bars',
series: {
1: {
type: 'line'
}
}
};
var chartAvg = new google.visualization.ComboChart(document.getElementById('chartAvg'));
chartAvg.draw(dv, options);
}
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chartAvg"></div>
相关文章:
- 谷歌组合图过渡动画
- 在highcharts组合图中传递Ajax数据
- 如何在高图表中传递数据(折线图)
- 谷歌组合图中当前数据的平均线
- 比较高图表组合图中工具提示内的两个数据点
- 如何在组合图中组合平滑线和一条直线
- 高图表组合图:覆盖线系列标记的列
- 如何将多个事件数据组合为一个适合与fullcalendar一起使用的对象或变量
- 如何使用Highcharts创建组合图
- GWT组合图绘制
- Highcharts柱+线组合图,包含多个系列.在柱上发布对齐线
- 使用c3js为相同的json数据创建组合图(线条和条形图)
- 谷歌图表组合图线条蜡烛
- 如何在给定的时间间隔重新渲染从Rails中的控制器检索数据的图
- 点不显示为线/散组合图d3.js
- js -使用工具提示数据(折线图)自定义事件
- 将数据(条形图和天气信息)插入SVG圆圈中
- 高图线系列不能正确显示堆叠条形组合图
- D3.js添加/删除数据饼图切片
- 禁用CanvasJS组合图的工具提示