Como fico confuso com o uso dos loops, de inicio estou evitando, mas consegui fazer o código funcionar sem os loops \o/
<canvas width="600" height="400"></canvas>
<script>
function desenhaRetangulo(x, y, largura, altura, cor) {
var tela = document.querySelector('canvas');
var pincel = tela.getContext('2d');
pincel.fillStyle=cor;
pincel.fillRect(x,y, largura, altura);
pincel.strokeStyle='black';
pincel.strokeRect(x,y, largura, altura);
}
function desenhaTexto(x, y, texto) {
var tela = document.querySelector('canvas');
var pincel = tela.getContext('2d');
pincel.font='15px Georgia';
pincel.fillStyle='black';
pincel.fillText(texto, x, y);
}
function desenhaBarra(x,y,serie,cor,texto) {
desenhaTexto(x,y-30,texto)
desenhaRetangulo(x,y,50,serie[0],cor[0])
desenhaRetangulo(x,y + serie[0] ,50,serie[1],cor[1])
desenhaRetangulo(x,y+serie[0]+serie[1],50,serie[2],cor[2])
desenhaRetangulo(x,y+serie[0]+serie[1]+serie[2],50,serie[3],cor[3])
}
var serie2015 = [50,25,20,5];
var serie2016 = [65,20,13,2];
var cores = ['blue', 'green', 'yellow', 'red'];
desenhaBarra(50,50,serie2015,cores,"2015");
desenhaBarra(150,50,serie2016,cores,"2016");
</script>