Всё выводится правильно. То, что отметка 2015 отсутствует - ну так ваши данные начинаются после начала этого года. Хотите её увидеть - можно в качестве начала интервала брать дату из конца предыдущего года, например:
x.domain([
d3.min(data, d => new Date(d.date)).setMonth(-1),
d3.max(data, d => new Date(d.date)),
]);