2015-04-11 2 views
0

См JSFiddle: http://jsfiddle.net/wc34frjd/1/оси X не отображаются все метки для определенных дат

Для некоторых дат, первая метка даты на оси X не показана. Например, даты с «2015-02-06» до «2015-02-12» показывают все метки, но изменение месяца на 04 приводит к отсутствию первого ярлыка.

  var data = [ 
         {value: 0, date: "2015-04-06"}, 
         {value: 10, date: "2015-04-07"}, 
         {value: 0, date: "2015-04-08"}, 
         {value: -20, date: "2015-04-09"}, 
         {value: 0, date: "2015-04-10"}, 
         {value: 30, date: "2015-04-11"}, 
         {value: 0, date: "2015-04-12"} 
         ]; 

Любые идеи, что не так?

+0

D3 определяет метки, которые будут показаны автоматически. Попробуйте вызвать '.nice()' на вашем шкале после настройки домена. –

+0

Отлично, что работает, спасибо @LarsKotthof – user1596328

ответ

0

Если вам действительно нужны конкретные ярлыки, вы должны упомянуть их в методе .tickValues([...]).

 var xAxis = d3.svg.axis() 
     .scale(x) 
     .orient('bottom') 
     .ticks(tickTime, tickSkips) 
     .tickFormat(d3.time.format('%a %d')) 
     .tickSize(0) 
     .tickPadding(10) 
     .tickValues([new Date('2015-4-6'), new Date('2015-4-9'), new Date('2015-4-12')]); 
Смежные вопросы