var width = 400, height = 200;
var svg = d3.select("body")
.append("svg")
.attr("width", width)
.attr("height", height);
var xAxisScale1 = d3.scaleTime()
.domain([new Date(2000, 0, 1), new Date(2016, 0, 1)])
.rangeRound([20,width - 20]);
var xAxisScale2 = d3.scaleTime()
.domain([new Date(2014, 0, 1), new Date(2016, 0, 1, 0)])
.rangeRound([20,width - 20]);
var xAxis1 = d3.axisBottom(xAxisScale1);
var xAxis2 = d3.axisBottom(xAxisScale2).tickFormat(d3.timeFormat("%Y"));
svg.append("g").call(xAxis1);
svg.append("g").attr("transform", "translate(0,40)").call(xAxis2);
svg.append("g").attr("transform", "translate(0,80)").call(xAxis2.ticks(d3.timeYear));
<script src="https://d3js.org/d3.v4.min.js"></script>