drawLabels method
Draws text labels. Labels must be drawn only after drawing the data points.
Implementation
@override
void drawLabels() {
var labelCountX = getLabelCountX();
var labelCountY = getLabelCountY();
var rangeX = gridMaxPxX - gridMinPxX;
var rangeY = gridMaxPxY - gridMinPxY;
var minX = getLabelMinX();
var minY = getLabelMinY();
var maxX = getLabelMaxX();
var maxY = getLabelMaxY();
var spaceX = rangeX/(labelCountX-1);
var spaceY = rangeY/(labelCountY-1);
var intervalX = (maxX - minX)/(labelCountX-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';
for (var i = 0; i < labelCountX; i++) {
ctx.fillText(labelFormatX((minX + intervalX*i)), gridMinPxX + spaceX*i, gridMaxPxY + textMargin, maxLabelWidthX);
}
}