2016-07-13 2 views
1

ChartJS (v2.1)를 사용하여 꺾은 선형 차트를 만듭니다.데이터 세트 크기를 기반으로 ChartJs 선 차트 너비를 동적으로 설정하는 방법은 무엇입니까?

대형 데이터 세트 : enter image description here

작은 데이터 세트 : enter image description here

데이터 세트가 얼마나 큰지에 따라 그 폭을 조정 선 차트를 나는 고정 된 크기의 데이터 집합을하지 않아도 내가 원하는 커다란 데이터 세트가 차트를 더 넓게 만들길 원합니다 (사용 가능한 너비로 축소하는 대신). 가로 스크롤 막대를 표시하는 것은 옵션이지만 데이터 집합의 크기가 어느 정도인지는 알 수 없으므로 차트의 너비를 지정할 수 없습니다.

X 축 눈금 사이의 최소 너비를 설정하는 옵션이 있습니까? 또는 차트를 자동으로 확장 할 수 있습니까? this question에 솔루션을 구현하려고했지만 디자인 타임 중에 너비를 결정할 수 없습니다.

내 마크 업 :

<div class="chartWrapper"> 
    <canvas id="f1-chart" class="chart chart-line" chart-data="f1Data" chart-labels="f1Labels" chart-series="f1Series" chart-options="f1Options"></canvas>   
</div> 

그리고 차트 옵션 :

scope.f1Options = {    
    legend: false,  
    responsive: true,    
    maintainAspectRatio: false 
} 
+0

[해결 방법] (http://stackoverflow.com/questions/35854244/how-can-i-create-a- horizontals-scrolling-chart-js-line-chart-with-a-locked-y- 축)을 (그리고 그것의 [피들] (http://jsfiddle.net/mbhavfwm/)) 완벽하게 작동합니다. 어떤 문제가 있습니까? – tektiv

+0

@tektiv 폭은 해당 솔루션에서 1200px로 사전 정의됩니다. 데이터 세트가 매우 작거나 너무 큰 경우 차트 크기가 매번 다를 수 있습니다. 동일한 척도를 유지하면서 차트가 자동으로 데이터 세트를 기반으로 성장하기를 원합니다. –

+1

글쎄, 당신은 기본으로 피들을 사용할 수 있고,'canvas'의 너비를 동적으로 바꿀 수 있습니다. ('width = 50px * num of values'와 같이) – tektiv

답변

-1

나는이 상자를 캔버스의 전체 폭을해야 chartjs.org 전각 부울 사실 마크에 발견 (밀어를 아래 다른 상자) http://www.chartjs.org/docs/#chart-configuration-title-configuration
희망이 도움이됩니다.

+0

OP의 전체 너비를 취하기 때문에 OP에 도움이되지 않습니다. ** 캔버스 **는 Chart.js의 모든 그래프에서 이미 사용되고 있습니다. 기본적으로 값이 'true'이므로 – tektiv

관련 문제