如果值仅出现在第一个和最后一个中,则 Google 柱形图中的错误
Error in Google column chart if value is present in 1st and last only
我已经为第一列和最后一列赋予了价值。这是一个例子。
const data = new google.visualization.DataTable();
data.addColumn('date', 'Day');
data.addColumn('number', 'label 1');
data.addColumn('number', 'label 2');
data.addColumn('number', 'label 3');
data.addRows([
[new Date("2016-8-1"),40, 10, 2],
[new Date("2016-8-2"),null,null,null],
[new Date("2016-8-3"),null,null,null],
[new Date("2016-8-4"),null,null,null],
[new Date("2016-8-5"),null,null,null],
[new Date("2016-8-6"),20,30,20]
]);
这是我得到的结果。
当我们在中间有任何值而不是空值时,图表会起作用。
这里似乎工作正常,您使用的是什么选项?
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('date', 'Day');
data.addColumn('number', 'label 1');
data.addColumn('number', 'label 2');
data.addColumn('number', 'label 3');
data.addRows([
[new Date("2016-8-1"),40, 10, 2],
[new Date("2016-8-2"),null,null,null],
[new Date("2016-8-3"),null,null,null],
[new Date("2016-8-4"),null,null,null],
[new Date("2016-8-5"),null,null,null],
[new Date("2016-8-6"),20,30,20]
]);
var options = {
legend: {
position: 'bottom'
},
hAxis: {
format: 'd'
}
};
var chartDiv = document.getElementById('chart_div');
var chart = new google.visualization.ColumnChart(chartDiv);
chart.draw(data, options);
// format test
var dataTest = new google.visualization.DataTable();
dataTest.addColumn('date', 'Day');
dataTest.addRows([
[new Date("2015-12-31")],
[new Date("12/31/2015")], //<-- displays correct timezone
]);
console.log(dataTest.getValue(0, 0));
console.log(dataTest.getValue(1, 0));
}
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart_div"></div>
我已经为第一列和最后一列赋予了价值。这是一个例子。
const data = new google.visualization.DataTable();
data.addColumn('date', 'Day');
data.addColumn('number', 'label 1');
data.addColumn('number', 'label 2');
data.addColumn('number', 'label 3');
data.addRows([
[new Date("2016-8-1"),40, 10, 2],
[new Date("2016-8-2"),null,null,null],
[new Date("2016-8-3"),null,null,null],
[new Date("2016-8-4"),null,null,null],
[new Date("2016-8-5"),null,null,null],
[new Date("2016-8-6"),20,30,20]
]);
这是我得到的结果。
当我们在中间有任何值而不是空值时,图表会起作用。
这里似乎工作正常,您使用的是什么选项?
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('date', 'Day');
data.addColumn('number', 'label 1');
data.addColumn('number', 'label 2');
data.addColumn('number', 'label 3');
data.addRows([
[new Date("2016-8-1"),40, 10, 2],
[new Date("2016-8-2"),null,null,null],
[new Date("2016-8-3"),null,null,null],
[new Date("2016-8-4"),null,null,null],
[new Date("2016-8-5"),null,null,null],
[new Date("2016-8-6"),20,30,20]
]);
var options = {
legend: {
position: 'bottom'
},
hAxis: {
format: 'd'
}
};
var chartDiv = document.getElementById('chart_div');
var chart = new google.visualization.ColumnChart(chartDiv);
chart.draw(data, options);
// format test
var dataTest = new google.visualization.DataTable();
dataTest.addColumn('date', 'Day');
dataTest.addRows([
[new Date("2015-12-31")],
[new Date("12/31/2015")], //<-- displays correct timezone
]);
console.log(dataTest.getValue(0, 0));
console.log(dataTest.getValue(1, 0));
}
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="chart_div"></div>