var canvas=document.getElementById("canvas");
var ctx=canvas.getContext("2d");
var cw=canvas.width;
var ch=canvas.height;
var height=100;
var baseY=200;
var ascending=35;
var descending=35;
var barheight=50;
var data=[65,14,4,3,3];
filledLineChart(data,height,baseY,descending,ascending,barheight,'gold')
function filledLineChart(data,height,baseY,descending,ascending,barheight,fillcolor){
var stepWidth=canvas.width/(data.length-1);
var maxDataValue=0;
for(var i=0;i<data.length;i++){
if(data[i]>maxDataValue){maxDataValue=data[i];}
}
ctx.beginPath();
ctx.moveTo(0,baseY-height*data[0]/maxDataValue);
for(var i=1;i<data.length;i++){
ctx.lineTo(stepWidth*i,baseY-height*data[i]/maxDataValue);
}
ctx.lineTo(stepWidth*(data.length-1),baseY);
ctx.lineTo(0,baseY);
ctx.fillStyle=fillcolor;
ctx.fill();
ctx.strokeStyle='lightgray';
ctx.strokeRect(0,baseY-height-ascending,canvas.width,height+descending+ascending);
ctx.strokeRect(0,baseY-height,canvas.width,height+descending);
ctx.beginPath();
for(var i=0;i<data.length;i++){
ctx.moveTo(i*stepWidth,baseY-height);
ctx.lineTo(i*stepWidth,baseY);
}
ctx.stroke();
ctx.fillStyle='whitesmoke';
ctx.fillRect(0,baseY-height-ascending-barheight,canvas.width,barheight);
}
<canvas id="canvas" width=300 height=300></canvas>