drawLabels method
void
drawLabels(
)
override
Implementation
@override
void drawLabels() {
var labelCountX = getLabelCountX();
var labelCountY = getLabelCountY();
var labelMinPxX = gridMinPxX + max(getBarWidth(), maxLabelWidthX)/2;
var labelMaxPxX = gridMaxPxX - max(getBarWidth(), maxLabelWidthX)/2;
var rangeX = labelMaxPxX - labelMinPxX;
var rangeY = gridMaxPxY - gridMinPxY;
var minY = getLabelMinY();
var maxY = getLabelMaxY();
var spaceX = rangeX/(labelCountX-1);
var spaceY = rangeY/(labelCountY-1);
var intervalY = (maxY - minY)/(labelCountY-1);
ctx.font = labelFontStyle;
ctx.shadowColor = '';
ctx.shadowBlur = 0;
ctx.shadowOffsetX = 0;
ctx.shadowOffsetY = 0;
ctx.textBaseline = 'middle';
ctx.textAlign = 'right';
ctx.fillStyle = labelFillStyle.toJS;
for (var i = 0; i < labelCountY; i++) {
ctx.fillText(labelFormatY(maxY - intervalY*i), gridMinPxX - textMargin, gridMinPxY + spaceY*i, maxLabelWidthY);
}
ctx.textAlign = 'center';
ctx.textBaseline = 'top';
if (labelCountX >= 2) {
var i = 0;
for (var x in keys) {
ctx.fillText(x, labelMinPxX + spaceX*i, gridMaxPxY + textMargin, maxLabelWidthX);
i++;
}
} else {
for (var x in keys) {
ctx.fillText(x, (labelMaxPxX - labelMinPxX)/2, gridMaxPxY + textMargin, maxLabelWidthX);
}
}
}