我正在量角器测试(在JavaScript中)中使用chartjs-node-canvas lib。 但是以某种方式我的图表完全是黑色的(很难说是黑色,因为我只能看到正方形的白色框,没有内容)。我做错了什么?
我将t代码放在allAll部分之后的所有代码行,因为我的.json是测量的结果。 因为我是通过fs.readFileSync导入.json的,所以我将其解析为在以下配置下使用:
const getJson = fs.readFileSync(`file.json`);
const json = JSON.parse(getJson);
const labels = json.map(function(item) {
return item.a;
});
const data = json.map(function(item) {
return item.b;
});
const configuration = {
type: 'line',
data: {
labels: [labels],
datasets: [{
label: 'AAA',
data: [data],
borderColor: 'rgba(75, 192, 192, 1)',
backgroundColor: 'rgba(75, 192, 192, 0.2)',
}]
},
};
const chartCallback = (Chart) => {
Chart.defaults.global.hover.mode = "nearest";
Chart.defaults.global.defaultFontFamily = 'VTKS UNAMOUR';
};
我的数据似乎还可以,因为作为数据和标签,我收到了值的数组。 最后我用了它:
const canvasRenderService = new CanvasRenderService(width, height, chartCallback);
const image = canvasRenderService.renderToBufferSync(configuration );
fs.writeFileSync(`chart.png`, image);
我做错了什么? png生成为带有正方形框架的空白页。
根据我尝试过的https://github.com/SeanSobey/ChartjsNodeCanvas/issues/9的PS
const chartjs = require('chart.js');
const canvasRenderService = new CanvasRenderService(width, height, undefined, undefined, () => chartjs);
但是效果一样。
答案 0 :(得分:0)
我从数据集中删除了数组,并使用了不带chartCallback的CanvasRenderService。此外,通过解决github问题中提到的黑色背景来解决问题。