Basic area

author(s): Torstein Hønsi

by Black Label

HTML

<script src="https://code.highcharts.com/highcharts.js"></script>

<div id="container"></div>
<button id="chartInit">Init chart</button>

JavaScript

var chart = Highcharts.chart('container', {
  colors: ['#762232', '#EFCA32', '#007788'],
  title: {
    text: '',
  },
  chart: {
    type: 'area',
    backgroundColor: null,
    // spacingRight: 5,
    spacingTop: 5,
    spacingBottom: 5,
    style: {
      fontFamily: 'Arial, sans-serif',
    },
    plotBorderWidth: 1,
    plotBorderColor: '#ccc',
  },

  xAxis: {
    gridZIndex: 4,
    gridLineWidth: 1,
    tickInterval: 1,
    tickWidth: 0,
    alignTicks: true,
    gridLineColor: '#762232',
    minPadding: 0,
    maxPadding: 0,
    title: {
      text: 'Years Invested',
    },
    labels: {
      enabled: true,
    },
  },

  yAxis: {
    gridLineWidth: 0,
    opposite: true,
    title: {
      text: 'Hypothetical Value',
    },
    showFirstLabel: false,
    showLastLabel: false,
    tickPositioner: function() {
      var prevTickPos = this.tickPositions,
        tickPositions = [prevTickPos[0], prevTickPos[prevTickPos.length - 1]],
        series = this.chart.series;

      series.forEach(function(s) {
        tickPositions.push(s.processedYData[s.processedYData.length - 1]);
      });

      tickPositions.sort(function(a, b) {
        return a - b;
      });

      return tickPositions;
    },
    labels: {
      enabled: true,
      align: "right",
      reserveSpace: true,
    },
  },
  tooltip: {
    enabled: !1,
  },
  plotOptions: {
    area: {
      pointStart: 0,
      stacking: false,
      lineColor: '#762232',
      lineWidth: 1,
      fillOpacity: 1,
      dataLabels: {
        crop: !1,
        color: '#762232',
        align: 'right',
        y: 5,
      },
      marker: {
        enabled: !1,
        symbol: 'circle',
        radius: 1,
        states: {
          hover: {
            enabled: !1,
          },
        },
      },
    },
  },

  series: [{
    data: []
  }, {
    data: []
  }, {
    data: []
  }]
});

document.getElementById('chartInit').addEventListener('click', function(){
	chart.update({
		series: [{
			data: [4457, 13371,...