我的下面的代码通过tabletop.js从google-sheets中提取数据作为chart.js的输入。问题是我无法使x轴显示。图表只是将y值本身显示为x-label。有什么帮助吗?
var publicSpreadsheetUrl = 'https://docs.google.com/spreadsheets/d/1BFPjROVypCGNeLxhk5_PW6PoOb4FDzJsL3DEOEdW_Rc/edit?usp=sharing';
function init() {
Tabletop.init({
key : publicSpreadsheetUrl,
callback : showPlot,
simpleSheet : true
});
}
function showPlot(data, tabletop) {
var xValues = [];
var yValues = [];
for (var i = 0; i < data.length; i++) {
if (xValues.indexOf(data[i].x) === -1) {
xValues.push(data[i].y);
}
if (yValues.indexOf(data[i].x) === -1) {
yValues.push(data[i].y);
}
}
var x = 0;
var y = 0;
for (i = 0; i < data.length; i++) {
x = xValues.indexOf(data[i].x);
y = yValues.indexOf(data[i].y);
}
var ctx = document.getElementById('chart').getContext('2d');
var chart = new Chart(ctx, {
type : 'line',
data : {
labels : xValues,
datasets : [{
label : "Revenues",
fill : false,
backgroundColor : '#3498DB',
borderColor : '#3498DB',
data : yValues,
}
],
}
});
}
init();
答案 0 :(得分:-1)
我很抱歉造成的任何麻烦, 这是一个错误导致错误....管理发现它。
for (var i = 0; i < data.length; i++) {
if (xValues.indexOf(data[i].x) === -1) {
xValues.push(data[i].y); // this should be x and not y.!
感谢那些回复的人......!