2014-08-28 2 views
1

는 다음 VND3 선 그래프 고려해 : OK http://jsfiddle.net/tramtom/hfv68yan/D3.js 선 차트

그래프 플롯 라인 그러나 내 데이터의 대부분은 오랜 기간 동안 정적이며, 두 시리즈는 항상 그래픽의 상단에 하나가 있고 하단 축에 다른 하나가 있습니다.

시리즈의 선이 중간 또는 최소 간격으로 Y 축에 대해 상대적 최소값과 최대 값을 만드는 방법으로 낮은 값의 시리즈가 거의 x 축에 있지 않도록합니다.

최소 또는 최대 100 단위 아래에 100 단위를 추가하여 선이 그래픽의 상단 또는 하단에 오지 않도록해야합니다.

는 여기 http://jsfiddle.net/tramtom/hfv68yan/1/처럼 도메인 및 범위 설정 값을 시도했지만 당신은 차트 인스턴스에 .forceY([0,500])을 추가하여 축 범위를 강제 할 필요가

var yScale = d3.scale.linear() 
.domain([ 
    d3.min(data, function (d) { 
     return d.y; 
    }) - 100, 
    d3.max(data, function (d) { 
     return d.y; 
    }) + 100 
]) 
.range([ 
    d3.min(data, function (d) { 
     return d.y; 
    }), 
    d3.max(data, function (d) { 
     return d.y; 
    }) 
]); 
+0

가능한 복제본 [d3.js 및 nvd3.js - y 축 범위 설정 방법] (http://stackoverflow.com/questions/11766879/d3-js-nvd3-js-how-to-set) -y 축 범위) – shabeer90

답변

1

효과를가 없습니다.

This SO answer이 도움이 될 수 있습니다. 그것은 적어도 올바른 방향으로 당신을 가리켜 야합니다.

+0

'.forceY()'를 사용하면 Y 축이 정적으로 설정되며 범례를 클릭하여 시리즈를 추가하거나 제거하면 차트에 애니메이션이 적용되지 않고 Y 축이 현재를 반영하도록 조정됩니다 시리즈 최대 및 최소. 차트를 동일한 동작으로 유지하는 방법을 찾고 있는데, 현재 시리즈의 최대 및 최소 단위에 특정 단위를 추가하는 것입니다. – edteke

+0

.forceX() 또는 .forceY()가 작동하지 않는다고 생각한 다음이 대답에서 범위를 배열에 넣고 메서드에 전달해야한다는 것을 알았습니다. –