2016-06-07 2 views
1

지난 30 일 동안의 일부 데이터를 나타내는 d3 그래프가 있습니다. 그래서 내 x 축은 일일 수를 사용하는 대신 날짜를 사용하지 않기 때문에 선형 스케일입니다. 지금 enter image description hereD3 선형 눈금, 사용자 지정 문자열을 틱으로 표시하는 방법?

내 문제 대신 이러한 틱 (숫자)로, 내가 원하는 것을 : 이제 x 축 보여, 나는

var xAxis = d3.svg.axis() 
      .scale(x) 
      .orient("bottom") 
      .outerTickSize(15) 
      .ticks(4) 

과 같은 몇 가지 일이 네 틱 다음과 같이 저를주는 코드를 사용 다음 배열에서 틱 레이블을 표시하십시오.

var xArray = ['one month ago', '3 weeks ago', '2 weeks ago', '1 week ago', 'today']; 

어떤 방법으로 생각하나요? (플로팅 그래프는 선형 스케일을 사용하기 때문에 순서 척도를 사용할 수 없다고 생각합니다.)

+0

는 나는 당신이 필요로하는 것을 알고 있다고 생각하지만, 당신은 plunker를 제공 할 수 있을까? (plnkr.co) –

+0

@AlexeyAyzin 아래 답변과 동일한 제안을 했습니까? 작동하지 않습니다. –

+0

그래, 실제로. 그것을 잘 알아내는 일. –

답변

3

축 목적을 위해 다른 (서수) 척도를 사용할 수 있어야합니다. 어쨌든

var xScaleForAxis = d3.scale.ordinal() 
      .domain(xArray) 
      .rangePoints([0, WIDTH]); 

지금 내가 원하는 결과를 얻기 위해 다음과 같이이 규모의 뭔가를 사용할 수있는 동일한 의심으로 사람을 도움이 될 수 있습니다.

이렇게하면 다음과 같은 결과를 얻을 수 있습니다.

enter image description here

관련 문제