drawGrid method

  1. @override
void drawGrid([
  1. bool drawY = false
])
override

Draw grid lines spanning left to right, lines that are parallel with the X axis. If true is supplied in drawY, Y axis lines are drawn too.

Implementation

@override
void drawGrid([bool drawY = false]) {
  var labelCountY = getLabelCountY();
  var rangeY = gridMaxPxY - gridMinPxY;
  var spaceY = rangeY/(labelCountY-1);

  ctx.strokeStyle = gridLineStrokeStyle.toJS;
  ctx.lineWidth = gridLineWidth;
  for (var i = 0; i < labelCountY; i++) {
    ctx.beginPath();
    ctx.moveTo(gridMinPxX, gridMinPxY + spaceY*i);
    ctx.lineTo(gridMaxPxX, gridMinPxY + spaceY*i);
    ctx.stroke();
  }

  if (drawY) {
    var labelCountX = getLabelCountX();
    var rangeX  = gridMaxPxX - gridMinPxX;
    var spaceX = rangeX/(labelCountX-1);
    for (var i = 0; i < labelCountX; i++) {
      ctx.beginPath();
      ctx.moveTo(gridMinPxX + spaceX*i, gridMinPxY);
      ctx.lineTo(gridMinPxX + spaceX*i, gridMaxPxY);
      ctx.stroke();
    }
  }
}