Roadmap with labels

X range chart

HTML

<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/highcharts-more.js"></script>
<script src="https://code.highcharts.com/modules/xrange.js"></script>
<script src="https://code.highcharts.com/modules/exporting.js"></script>

<div id="container"></div>

CSS

#container {
  height: 300px;
  margin: 1em auto;
}

JavaScript

Highcharts.chart('container', {
  chart: {
    type: 'xrange'
  },
  title: {
    text: 'Roadmap'
  },
  legend: {
    enabled: false
  },

  tooltip: {
    formatter: function() {
      if (this.series.name != 'milestones') {
        return '<b>Start : </b>' + Highcharts.dateFormat('%Y-%m-%d<b>', this.series.data[this.y].x) + '<br><b>End : </b>' + Highcharts.dateFormat('%Y-%m-%d<b>', this.series.data[this.y].x2);
      }
    }
  },

  xAxis: {
    type: 'datetime',
    opposite: true,
    tickInterval: 30 * 24 * 3600 * 1000,
    plotLines: [{ // mark the weekend
      color: 'red',
      width: 2,
      value: Date.UTC(2014, 2, 8),
      label: {
        x: -20,
        y: -40,
        text: "Today",
        rotation: 0,
        style: {
          fontWeight: 'bold'
        }
      }
    }]
  },
  yAxis: {
    title: {
      text: ''
    },
    categories: ['DEV', 'ACPT', 'PROD'],
    reversed: true
  },
  series: [{
    name: 'milestones',
    type: 'scatter',
    stickyTracking: false,
    marker: {
      enabled: true,
      symbol: 'circle',
      fillColor: "red",
      lineWidth: 5,
      radius: 10,
      label: {
        x: -20,
        y: -40,
        text: "Today",
        rotation: 0,
        style: {
          fontWeight: 'bold'
        }
      }
    },
    data: [{
      x: Date.UTC(2014, 5, 3),
      y: 0,
    }]
  }, {
    name: 'Project 1',
    pointWidth: 25,
    colorByPoint: true,
    colors: ["blue", "blue", "red"],

    data: [{
        x: Date.UTC(2014, 2, 3),
        x2: Date.UTC(2014, 2, 18),
        y: 0,
        name: "Sprint1"
      },
      {
        x: Date.UTC(2014, 2, 22),
        x2: Date.UTC(2014, 3, 10),
        y: 0,
        name: "Sprint2"
      }, {
        x: Date.UTC(2014, 3, 13),
        x2: Date.UTC(2014, 4, 6),
        y: 0,
        name: "Sprint3"
      }, {
        x: Date.UTC(2014, 4, 7),
        x2: Date.UTC(2014, 4, 29),
        y: 0,
        name: "Sprint4"
      }, {
        x: Date.UTC(2014, 2, 22),
        x2:...