<script type="text/javascript" src="{{ static('libs/chart.js/Chart.js') }}"></script>
<script type="text/javascript">
  function draw_pie_chart(data, $chart) {
    var ctx = $chart.find('canvas')[0].getContext('2d');
    var chart = new Chart(ctx, {
      type: 'pie',
      data: data,
      options: {
        maintainAspectRatio: false,
        responsive: false,
        animation: false,
        legend: {
          position: 'right',
          labels: {
            fontColor: 'black',
            boxWidth: 20,
          },
        },
      },
    });
  }

  function draw_bar_chart(data, $chart) {
    var ctx = $chart.find('canvas')[0].getContext('2d');
    ctx.canvas.height = 20 * data.labels.length + 100;
    var chart = new Chart(ctx, {
      type: 'horizontalBar',
      data: data,
      options: {
        maintainAspectRatio: false,
        legend: {
          display: false,
        },
        tooltips: {
          callbacks: {
            label: function(tooltipItem, data) {
              return (Math.round(tooltipItem.value * 100) / 100) + '%';
            },
          },
        },
      },
    });
  }

  function draw_stacked_bar_chart(data, $chart) {
    var ctx = $chart.find('canvas')[0].getContext('2d');
    ctx.canvas.height = 20 * data.labels.length + 100;
    var chart = new Chart(ctx, {
      type: 'horizontalBar',
      data: data,
      options: {
        maintainAspectRatio: false,
        tooltips: {
          mode: 'index',
          intersect: false,
        },
        scales: {
          xAxes: [{
            stacked: true,
          }],
          yAxes: [{
            stacked: true,
          }],
        },
      },
    });
  }
  function draw_histogram(data, $chart) {
    var ctx = $chart.find('canvas')[0].getContext('2d');
    ctx.canvas.height = 20 * data.labels.length + 100;
    var chart = new Chart(ctx, {
      type: 'bar',
      data: data,
      options: {
        maintainAspectRatio: false,
        legend: {
          display: false,
        },
        tooltips: {
          callbacks: {
            label: function(tooltipItem, data) {
              return tooltipItem.value;
            },
          },
        },
      },
    });
    return chart;
  }

  function draw_timeline(data, $chart) {
    var ctx = $chart.find('canvas')[0].getContext('2d');
    var chart = new Chart(ctx, {
      type: 'line',
      data: data,
      options: {
        maintainAspectRatio: false,
        legend: {
          display: false,
        },
        scales: {
          xAxes: [{
            type: 'time',
          }]
        },
      },
    });
    return chart;
  }
</script>