var chartColors = {
	red: 'rgb(255, 99, 132)',
	blue: 'rgb(54, 162, 235)'
};

var color = Chart.helpers.color;
var config = {
	type: 'bar',
	data: {
		datasets: [{
			type: 'line',
			yAxisID: 'temperature',
			backgroundColor: 'transparent',
			borderColor: chartColors.red,
			pointBackgroundColor: chartColors.red,
			tension: 0,
			fill: false
		}, {
			yAxisID: 'precipitation',
			backgroundColor: color(chartColors.blue).alpha(0.5).rgbString(),
			borderColor: 'transparent'
		}]
	},
	plugins: [ChartDataSource],
	options: {
		title: {
			display: true,
			text: 'JSON data source (dataset) sample'
		},
		scales: {
			xAxes: [{
				scaleLabel: {
					display: true,
					labelString: 'Month'
				}
			}],
			yAxes: [{
				id: 'temperature',
				gridLines: {
					drawOnChartArea: false
				},
				scaleLabel: {
					display: true,
					labelString: 'Temperature (°C)'
				}
			}, {
				id: 'precipitation',
				position: 'right',
				gridLines: {
					drawOnChartArea: false
				},
				scaleLabel: {
					display: true,
					labelString: 'Precipitation (mm)'
				}
			}]
		},
		plugins: {
			datasource: {
				type: 'json',
				url: 'sample-dataset.json',
				rowMapping: 'dataset',
				indexLabels: 'labels',
				datasetLabels: 'datasets[*].label',
				data: 'datasets[*].data'
			}
		}
	}
};

window.onload = function() {
	var ctx = document.getElementById('myChart').getContext('2d');
	window.myChart = new Chart(ctx, config);
};
{
	"labels": ["January", "February", "March", "April", "May", "June", "July"],
	"datasets": [{
		"label": "Temperature",
		"data": [7, 7, 10, 15, 20, 23, 26]
	}, {
		"label": "Precipitation",
		"data": [8.1, 14.9, 41.0, 31.4, 42.6, 57.5, 36.0]
	}]
}
<head>
	<script src="https://cdn.jsdelivr.net/npm/chart.js@2.8.0"></script>
	<script src="https://cdn.jsdelivr.net/npm/chartjs-plugin-datasource@0.1.0"></script>
</head>
<body>
	<div>
		<canvas id="myChart"></canvas>
	</div>
</body>