我想要在单个Google图表中显示多个数据集合。每个系列都是CPM的集合,其日期为:
例如:
series A[
'2016-09-01' => 2.08023,
'2016-09-04' => 2.01123
];
series B[
'2016-09-01' => 1.99324,
'2016-09-02' => 2.00112
];
请注意,这两个系列中的日期并不相同。我想在一个谷歌图中绘制这两个图。我应该如何格式化数据行(如果可以的话)。
我已经用我认为可行的方式制作了JSFiddle,但在数据表中添加空值并不起作用,我在第一个系列中得到两个点,其中我&#39 ;我期待一条线。如何让谷歌图表画线而不是点?
答案 0 :(得分:1)
在小提琴中,数据设置正确
但是,由于日期不同,因此系列A 的值为null
需要使用configuration option interpolateNulls: true
来自文档...
<强> interpolateNulls 强>
是否猜测缺失点的价值。如果为true,它将根据相邻点猜测任何缺失数据的值。如果为false,则会在未知点处的线路中断。
请参阅以下工作代码段...
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('date', 'X');
data.addColumn('number', 'series a');
data.addColumn('number', 'series b')
data.addRows([
[new Date( 1472688000000 ), 2.08023, 1.99324],
[new Date( 1472774400000 ), null, 2.00112],
[new Date( 1472947200000 ), 2.01123, null]
]);
var options = {
interpolateNulls: true
};
var container = document.getElementById('chart_div');
var chart = new google.visualization.LineChart(container);
chart.draw(data, options);
}
&#13;
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart_div"></div>
&#13;