【发布时间】:2018-10-15 08:05:09
【问题描述】:
我使用ChartJS 来实现图表,但我注意到我的图表标签之一是隐藏的。它没有在栏上方显示其标签。我在下面添加了一个屏幕截图,用于比较两个不同的条形图。左图显示标签,即使它位于最顶部但另一个未显示。请看下面我的截图和代码。
function createChart(context, type, bgColor, bdColor, labels, actualData, options = {}){
new Chart(context, {
type: type,
data: {
labels: labels,
datasets: [{
label: "Actual",
backgroundColor: bgColor,
borderColor: bdColor,
data: actualData,
}]
},
options: options
});
}
function getOptions(displayLegend = true){
return {
events: false,
showTooltips: false,
legend: {
display: displayLegend
},
animation: {
duration: 0,
onComplete: function(){
var ctx = this.chart.ctx;
ctx.font = Chart.helpers.fontString(Chart.defaults.global.defaultFontFamily, 'normal', Chart.defaults.global.defaultFontFamily);
ctx.textAlign = 'center';
ctx.textBaseLine = 'bottom';
ctx.fillStyle = '#0b7707';
this.data.datasets.forEach(function(dataset){
console.log(dataset);
for(var i = 0; i < dataset.data.length; i++){
for(var key in dataset._meta){
var model = dataset._meta[key].data[i]._model;
ctx.fillText(dataset.data[i], model.x, model.y - 13);
}
}
});
}
}
};
}
【问题讨论】:
-
都使用相同的css?似乎正确的一个削减了顶部。
-
@ChaseChoi 除了颜色之外,我没有为这些添加任何 CSS。
-
需要更多代码来检查问题。而且我不确定标签是否存在于图例后面,因为图例的部分未显示在正确的图像上。或者您编辑此小提琴以重现您的问题。 jsfiddle.net/Luaf2tm4/5973
-
我编辑了它。请检查此jsfiddle.net/Luaf2tm4/5974
-
我设置图例>显示为
false
标签: javascript chart.js