Edit in JSFiddle

    /* 
	* utils.js
  * charts.js 만들기 위한 utils.js 부분
  * 공식 사이트에서 제공하는 utils.js 
*/
'use strict';

window.chartColors = {
	red: 'rgb(255, 99, 132)',
	orange: 'rgb(255, 159, 64)',
	yellow: 'rgb(255, 205, 86)',
	green: 'rgb(75, 192, 192)',
	blue: 'rgb(54, 162, 235)',
	purple: 'rgb(153, 102, 255)',
	grey: 'rgb(201, 203, 207)'
};
(function(global) {
	var MONTHS = [
		'January',
		'February',
		'March',
		'April',
		'May',
		'June',
		'July',
		'August',
		'September',
		'October',
		'November',
		'December'
	];

	var COLORS = [
		'#4dc9f6',
		'#f67019',
		'#f53794',
		'#537bc4',
		'#acc236',
		'#166a8f',
		'#00a950',
		'#58595b',
		'#8549ba'
	];

	var Samples = global.Samples || (global.Samples = {});
	var Color = Chart.helpers.color;

	function applyDefaultNumbers(config) {
		var cfg = config || {};
		cfg.min = cfg.min || 0;
		cfg.max = cfg.max || 1;
		cfg.from = cfg.from || [];
		cfg.count = cfg.count || 8;
		cfg.decimals = cfg.decimals || 8;
		cfg.continuity = cfg.continuity || 1;

		return cfg;
	}

	Samples.utils = {
		// Adapted from http://indiegamr.com/generate-repeatable-random-numbers-in-js/
		srand: function(seed) {
			this._seed = seed;
		},

		rand: function(min, max) {
			var seed = this._seed;
			min = min === undefined ? 0 : min;
			max = max === undefined ? 1 : max;
			this._seed = (seed * 9301 + 49297) % 233280;
			return min + (this._seed / 233280) * (max - min);
		},

		numbers: function(config) {
			var cfg = applyDefaultNumbers(config);
			var dfactor = Math.pow(10, cfg.decimals) || 0;
			var data = [];
			var i, value;

			for (i = 0; i < cfg.count; ++i) {
				value = (cfg.from[i] || 0) + this.rand(cfg.min, cfg.max);
				if (this.rand() <= cfg.continuity) {
					data.push(Math.round(dfactor * value) / dfactor);
				} else {
					data.push(null);
				}
			}

			return data;
		},

		labels: function(config) {
			var cfg = config || {};
			var min = cfg.min || 0;
			var max = cfg.max || 100;
			var count = cfg.count || 8;
			var step = (max - min) / count;
			var decimals = cfg.decimals || 8;
			var dfactor = Math.pow(10, decimals) || 0;
			var prefix = cfg.prefix || '';
			var values = [];
			var i;

			for (i = min; i < max; i += step) {
				values.push(prefix + Math.round(dfactor * i) / dfactor);
			}

			return values;
		},

		months: function(config) {
			var cfg = config || {};
			var count = cfg.count || 12;
			var section = cfg.section;
			var values = [];
			var i, value;

			for (i = 0; i < count; ++i) {
				value = MONTHS[Math.ceil(i) % 12];
				values.push(value.substring(0, section));
			}

			return values;
		},

		color: function(index) {
			return COLORS[index % COLORS.length];
		},

		transparentize: function(color, opacity) {
			var alpha = opacity === undefined ? 0.5 : 1 - opacity;
			return Color(color).alpha(alpha).rgbString();
		}
	};

	// DEPRECATED
	window.randomScalingFactor = function() {
		return Math.round(Samples.utils.rand(-100, 100));
	};

	// INITIALIZATION

	Samples.utils.srand(Date.now());

	// Google Analytics
	/* eslint-disable */
	if (document.location.hostname.match(/^(www\.)?chartjs\.org$/)) {
		(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
		(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
		m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
		})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
		ga('create', 'UA-28909194-3', 'auto');
		ga('send', 'pageview');
	}
	/* eslint-enable */

}(this));

/* 
	* utils.js
  * 끝 부분 
*/
// ------------------------------------------------------------
// 차트에 표현할 x 축의 값
		var MONTHS = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
		// 차트에 표현할 컬러 
		var chartColors = {
			red: 'rgb(255, 99, 132)',
			orange: 'rgb(255, 159, 64)',
			yellow: 'rgb(255, 205, 86)',
			green: 'rgb(75, 192, 192)',
			blue: 'rgb(54, 162, 235)',
			purple: 'rgb(153, 102, 255)',
			grey: 'rgb(201, 203, 207)'
		};
		var config = {
			type: 'line',
			data: {
				labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'],
				datasets: []
			},
			options: {
				// 컨테이너가 수행 할 때 차트 캔버스의 크기를 조정(dafalut : true)
				responsive: true,
				// 크기 조정 이벤트 후 새 크기로 애니메이션하는 데 걸리는 시간(밀리 초) (defalut : 0)
				responsiveAnimationDuration: 1000,
				// (width / height) 크기를 조정할 떄 원래 캔버스 종횡비를 유지 (defalut : true)
				maintainAspectRatio: true,
				// 캔버스 종횡비( width / height, 정사각형 캔버스를 나타내는 값) 높이가 속성으로 또는 스타일 통해 명시적으로 정의된 경우이 옵션은 무시
				aspectRatio: 2,
				// 크기 조정이 발생할 때 호출
				onResize: function () {
					console.log('onResize');
				},
				title: {
					display: true,
					// 차트 제목 
					text: 'Chart.js Line Chart'
				},
				tooltips: {
					mode: 'index',
					intersect: false,
				},
				hover: {
					mode: 'nearest',
					intersect: true
				},
				scales: {
					x: {
						display: true,
						scaleLabel: {
							display: true,
							labelString: 'Month'
						}
					},
					y: {
						display: true,
						scaleLabel: {
							display: true,
							labelString: 'Value'
						}
					}
				}
			}
		};
	 
		// 새로운 데이터 만들기 
		var datasetSample = {
			label: 'label',
			backgroundColor: window.chartColors.red,
			borderColor: window.chartColors.red,
			data: [
				randomScalingFactor(),
				randomScalingFactor(),
				randomScalingFactor(),
				randomScalingFactor(),
				randomScalingFactor(),
				randomScalingFactor(),
				randomScalingFactor()
			],
		};
    
    // 윈도우가 로드가 될때
		window.onload = function () {
			// line1 ========================================================
			// 생성할 canvas 요소 
			var line1 = document.getElementById('line1').getContext('2d');
			// config 파일 복사
			var line1Config = JSON.parse(JSON.stringify(config));

			// 데이터셋 생성하기 
			var line1DatasetSample = datasetSample;
			/// 라벨 
			line1DatasetSample.label = 'line1 Dataset Sample';
			// 채우기 옵션 
			line1DatasetSample.fill = false;
			// 채웠을 때 색깔
			line1DatasetSample.backgroundColor = window.chartColors.red;
			// 선 색깔 
			line1DatasetSample.borderColor = window.chartColors.yellow;
			// 데이터 채우기 
			line1Config.data.datasets.push(line1DatasetSample);
			// 타이틀값 
			line1Config.options.title.text = 'line1/Fill Option = false';
			// 차트 생성하기
			window.line1 = new Chart(line1, line1Config);
			//  ======================================================== line1

			// line2 ========================================================
			var line2 = document.getElementById('line2').getContext('2d');
			var line2Config = JSON.parse(JSON.stringify(config));

			var line2DatasetSample = datasetSample;
			line2DatasetSample.label = 'line2 Dataset Sample';
			line2DatasetSample.fill = 'origin';
			line2DatasetSample.backgroundColor = window.chartColors.red;
			line2DatasetSample.borderColor = window.chartColors.yellow;

			line2Config.data.datasets.push(line2DatasetSample);
			line2Config.options.title.text = 'line2/Fill Option = origin';
			window.line2 = new Chart(line2, line2Config);
			//  ======================================================== line2

			// line3 ========================================================
			var line3 = document.getElementById('line3').getContext('2d');
			var line3Config = JSON.parse(JSON.stringify(config));
			var line3DatasetSample = datasetSample;

			line3DatasetSample.label = 'line3 Dataset Sample';
			line3DatasetSample.fill = 'start';
			line3Config.data.datasets.push(line3DatasetSample);
			line3Config.options.title.text = 'line3/Fill Option = start';
			line3DatasetSample.backgroundColor = window.chartColors.red;
			line3DatasetSample.borderColor = window.chartColors.yellow;

			window.line3 = new Chart(line3, line3Config);
			//  ======================================================== line3

			// line4 ========================================================
			var line4 = document.getElementById('line4').getContext('2d');
			var line4Config = JSON.parse(JSON.stringify(config));

			var line4DatasetSample = datasetSample;
			line4DatasetSample.label = 'line4 Dataset Sample';
			line4DatasetSample.fill = 'end';
			line4DatasetSample.backgroundColor = window.chartColors.red;
			line4DatasetSample.borderColor = window.chartColors.yellow;

			line4Config.data.datasets.push(line4DatasetSample);
			line4Config.options.title.text = 'line4/Fill Option = end';
			window.line4 = new Chart(line4, line4Config);
			//  ======================================================== line4
		};
    
    
<title>Chart.js 라인(Line) Fill 옵션 </title>
	<!-- <script src="../../dist/chart.min.js"></script> -->
	<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.9.3/Chart.js" integrity="sha512-QEiC894KVkN9Tsoi6+mKf8HaCLJvyA6QIRzY5KrfINXYuP9NxdIkRQhGq3BZi0J4I7V5SidGM3XUQ5wFiMDuWg==" crossorigin="anonymous"></script>

<div class="container">
		<div class="chart-container">
			<canvas id="line1"></canvas>
		</div>
		<div class="chart-container">
			<canvas id="line2"></canvas>
		</div>
		<div class="chart-container">
			<canvas id="line3"></canvas>
		</div>
		<div class="chart-container">
			<canvas id="line4"></canvas>
		</div>
	</div>
  
canvas {
			-moz-user-select: none;
			-webkit-user-select: none;
			-ms-user-select: none;
		}

		.chart-container {
			width: 600px;
			margin-left: 10px;
			margin-right: 10px;
			margin-bottom: 10px;
			border: 1px solid black;
		}

		.container {
			display: flex;
			flex-direction: row;
			flex-wrap: wrap;
			justify-content: center;
		}