2016-06-20 12 views
32

Oto mój kod. Muszę ustawić wartość początkową jako "0" w skalach osi X i Y. Próbowałem opcji wagi najnowszej wersji.jak ustawić wartość początkową jako "0" w chartjs?

graphOptions = {    
      ///Boolean - Whether grid lines are shown across the chart 
      scaleShowGridLines: false,  
      tooltipTitleTemplate: "<%= label%>", 
      //String - Colour of the grid lines 
      scaleGridLineColor: "rgba(0,0,0,.05)", 
      //Number - Width of the grid lines 
      scaleGridLineWidth: 1, 
      //Boolean - Whether to show horizontal lines (except X axis) 
      scaleShowHorizontalLines: true, 
      //Boolean - Whether to show vertical lines (except Y axis) 
      scaleShowVerticalLines: true, 
      //Boolean - Whether the line is curved between points 
      bezierCurve: true, 
      //Number - Tension of the bezier curve between points 
      bezierCurveTension: 0.4, 
      //Boolean - Whether to show a dot for each point 
      pointDot: true, 
      //Number - Radius of each point dot in pixels 
      pointDotRadius: 4, 
      //Number - Pixel width of point dot stroke 
      pointDotStrokeWidth: 1,    
      pointHitDetectionRadius: 20,    
      datasetStroke: true, 
      datasetStrokeWidth: 2, 
      datasetFill: true,    
      legendTemplate: "<ul class=\"<%=name.toLowerCase()%>-legend\"><% for (var i=0; i<datasets.length; i++){%><li><span style=\"background-color:<%=datasets[i].strokeColor%>\"></span><%if(datasets[i].label){%><%=datasets[i].label%><%}%></li><%}%></ul>" 
     }; 
     var LineChart = new Chart(ctx).Line(graphData, graphOptions); 
    }  

Odpowiedz

82

Dla wykresu .js 2. *, opcja dla skali zaczynającej się od zera jest wymieniona pod configuration options of the linear scale. Jest to używane w przypadku danych liczbowych, które najprawdopodobniej mają miejsce w przypadku osi Y. Tak, trzeba to wykorzystać:

options: { 
    scales: { 
     yAxes: [{ 
      ticks: { 
       beginAtZero: true 
      } 
     }] 
    } 
} 

Przykładowy wykres liniowy jest również dostępna here gdzie opcja służy do osi y. Jeśli twoje dane liczbowe znajdują się na osi X, użyj xAxes zamiast yAxes. Zauważ, że tablica (i liczba mnoga) jest używana dla yAxes (lub xAxes), ponieważ równie dobrze możesz mieć wiele osi.

+0

Bardzo dziękuję xnakos. to działa dla mnie –

+0

@SuganthanRaj Zapraszamy! Tylko upewnij się, że sprawdzasz dokumenty dla Chart.js 2.0. Wiele zmieniło się z wersji 1.0, a większość przykładów online dotyczy wersji 1.0. ;) – xnakos

+0

@SuganthanRaj Na przykład 'scaleShowVerticalLines' nie jest poprawne dla wersji 2.0. Lub szablon szablonu podpowiedzi. Ogólnie opcje są zgodne z podejściem hierarchicznym w wersji 2.0. – xnakos

1

proszę dodać tę opcję:

//Boolean - Whether the scale should start at zero, or an order of magnitude down from the lowest value 
scaleBeginAtZero : true, 

(Reference: Chart.js)

UWAGA: Oryginalny rozwiązanie napisałem było dla Highcharts, jeśli nie są następnie za pomocą Highcharts usuń tag, aby uniknąć nieporozumień.

+0

to nie działa. Używam najnowszej wersji programu chartjs v2.1 –

+0

Zaktualizowałem odpowiedź – wmash