javascript – 谷歌条形图数据准备 – 按列分组
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 谷歌条形图数据准备 – 按列分组,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2561字,纯文字阅读大概需要4分钟。
内容图文
![javascript – 谷歌条形图数据准备 – 按列分组](/upload/InfoBanner/zyjiaocheng/709/3d9513c0d2954e0b96f06f3d2bb8a5cd.jpg)
我想从下面的数据创建一个谷歌图表.
Year Product Value
2015 A 10
2015 B 20
2016 C 30
2016 D 40
这是我的谷歌图表的正确数据,使用arrayToDataTable函数,但没有获得所需的输出.
我希望Product为传说,Year为xAxis值,值应定义条形.
谢谢
解决方法:
每个图表类型都有一个特定的data format你可以检查
通常,对于大多数图表类型,第一个之后的所有列都应该是一个数字
除非您使用注释,工具提示或其他角色
因此,数据需要看起来类似于……
['Year', 'A', 'B', 'C', 'D'],
['2015', 10, 20, null, null],
['2016', null, null, 30, 40],
请参阅以下工作代码段…
google.charts.load('current', {
callback: function () {
var data = google.visualization.arrayToDataTable([
['Year', 'A', 'B', 'C', 'D'],
['2015', 10, 20, null, null],
['2016', null, null, 30, 40],
]);
var chart = new google.visualization.BarChart(document.getElementById('chart_div'));
chart.draw(data);
},
packages: ['corechart']
});
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart_div"></div>
编辑
将数据从sql server转换为图表首选的格式,
首先创建一个数据视图,其中包含每个唯一产品的计算列
然后使用group()方法聚合视图,对年份进行分组
使用聚合数据表绘制图表
请参阅以下工作代码段…
google.charts.load('current', {
callback: function () {
// raw table data
var data = google.visualization.arrayToDataTable([
['Year', 'Product', 'Value'],
[2015, 'A', 10],
[2015, 'B', 20],
[2016, 'C', 30],
[2016, 'D', 40]
]);
// format year as string
var formatYear = new google.visualization.NumberFormat({
pattern: '0000'
});
formatYear.format(data, 0);
// create data view
var view = new google.visualization.DataView(data);
// init column arrays
var aggColumns = [];
// use formatted year as first column
var viewColumns = [{
calc: function (dt, row) {
return dt.getFormattedValue(row, 0);
},
label: data.getColumnLabel(0),
type: 'string'
}];
// build view & agg column for each product
data.getDistinctValues(1).forEach(function (product, index) {
// add view column
viewColumns.push({
calc: function (dt, row) {
if (dt.getValue(row, 1) === product) {
return dt.getValue(row, 2);
}
return null;
},
label: product,
type: 'number'
});
// add agg column
aggColumns.push({
aggregation: google.visualization.data.sum,
column: index + 1,
label: product,
type: 'number'
});
});
// set view columns
view.setColumns(viewColumns);
// agg view by year
var group = google.visualization.data.group(
view,
[0],
aggColumns
);
// draw chart
var chart = new google.visualization.BarChart(document.getElementById('chart_div'));
chart.draw(group);
},
packages: ['corechart']
});
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart_div"></div>
内容总结
以上是互联网集市为您收集整理的javascript – 谷歌条形图数据准备 – 按列分组全部内容,希望文章能够帮你解决javascript – 谷歌条形图数据准备 – 按列分组所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。