Javascript 数组不能与chart.js一起使用
感谢阅读并与我共度时光。当我使用标签和数据值时用括号括起来,如[pollo,acqua,verdure]和[32,25,14]绘制图形,但如果我替换这些值使用数组时,不会绘制任何内容。chart.js version=2.8有什么问题?提前谢谢Javascript 数组不能与chart.js一起使用,javascript,chart.js,Javascript,Chart.js,感谢阅读并与我共度时光。当我使用标签和数据值时用括号括起来,如[pollo,acqua,verdure]和[32,25,14]绘制图形,但如果我替换这些值使用数组时,不会绘制任何内容。chart.js version=2.8有什么问题?提前谢谢 const http = require('http'); const mysql = require('mysql'); var Chart = require('chart.js'); const pool = mysql.createPo
const http = require('http');
const mysql = require('mysql');
var Chart = require('chart.js');
const pool = mysql.createPool({
host: '127.0.0.1',
user: 'andrea',
password: 'password',
database: 'spesa',
charset: 'utf8'
});
//html string that will be send to browser
var template ="<html><head><title>Grafici Analisi Spesa</title><script src='https://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.2/Chart.min.js'></script></head><body><h1>Grafici Analisi Spesa</h1>{${table}}</body></html>";
var sqlQuery ='SELECT articolo,SUM(quantita)as quantita FROM registro GROUP BY articolo ORDER BY SUM(quantita) DESC LIMIT 0, 6';
function setResHtml(sql, cb){
pool.getConnection((err, con)=>{
if(err) throw err;
//con.query(sql+con.escape(idAlunno), (err, res, cols)=>{
con.query(sql, (err, res, cols)=>{
if(err) throw err;
var table = '';
var articoli = new Array();
var totQuantita = new Array();
//create html table with data from res.
for (var i = 0; i < res.length; i++) {
articoli.push(res[i].articolo);
totQuantita.push(res[i].quantita);
console.log(articoli[i] + " " + totQuantita[i]);
}
table = `<canvas id="myChart" width="400" height="400" ></canvas>`;
table+=`<script>
var barData = {
labels : articoli,
datasets : [
{
fillColor : "rgba(73,188,170,0.4)",
strokeColor : "rgba(72,174,209,0.4)",
data : totQuantita
}
]
}
// get bar chart canvas
var myChart = document.getElementById("myChart").getContext("2d");
// draw bar chart
new Chart(myChart).Bar(barData);
</script>`;
con.release();
return cb(table);
});
});
}
//create the server for browser access
const server = http.createServer((req, res)=>{
setResHtml(sqlQuery, resql=>{
reo = template.replace('{${table}}', resql);
res.writeHead(200, {'Content-Type':'text/html; charset=utf-8'});
res.write(reo, 'utf-8');
res.end();
});
}).listen(8081);
从文档中,您可以提供数据:[20,10],该数据将在X轴上绘制数据,或者提供数据:[{X:'2016-12-25',y:20},{X:'2016-12-26',y:10}],提供X和y两个设置。您是否尝试过后面的选项来绘制图表。我使用了${JSON.stringifyarticoli}并从文档中进行了求解-您可以提供数据:[20,10],将数据绘制在X轴上,或者提供数据:[{X:'2016-12-25',y:20},{X:'2016-12-26',y:10}],将X和y都作为设置。您是否尝试过后面的选项来绘制图表。我使用了${JSON.stringifyarticoli}并解决了