2017-02-16 29 views
0

Chart.jsを使用してグラフに水平線を描画します。しかし私はそれをすることができません。Chart.js限界線付きの積み上げ棒グラフを描画

私はこのexampleを見つけたが、私はトラブルライン、バーチャートは「ポイント」

var data = { 
 
    labels: ["JAN", "FEB", "MAR", "APR", "MAY", "JUN", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC"], 
 
    datasets: [{ 
 
     data: [12, 3, 2, 1, 8, 8, 2, 2, 3, 5, 7, 1] 
 
    }] 
 
}; 
 

 
var ctx = document.getElementById("LineWithLine").getContext("2d"); 
 

 
Chart.types.Line.extend({ 
 
    name: "LineWithLine", 
 
    initialize: function() { 
 
     Chart.types.Line.prototype.initialize.apply(this, arguments); 
 
    }, 
 
    draw: function() { 
 
     Chart.types.Line.prototype.draw.apply(this, arguments); 
 
     
 
     var point = this.datasets[0].points[this.options.lineAtIndex] 
 
     var scale = this.scale 
 
     console.log(this); 
 

 
     // draw line 
 
     this.chart.ctx.beginPath(); 
 
     this.chart.ctx.moveTo(scale.startPoint+12, point.y); 
 
     this.chart.ctx.strokeStyle = '#ff0000'; 
 
     this.chart.ctx.lineTo(this.chart.width, point.y); 
 
     this.chart.ctx.stroke(); 
 
     
 
     // write TODAY 
 
     this.chart.ctx.textAlign = 'center'; 
 
     this.chart.ctx.fillText("TODAY", scale.startPoint + 35, point.y+10); 
 
    } 
 
}); 
 

 
new Chart(ctx).LineWithLine(data, { 
 
    datasetFill : false, 
 
    lineAtIndex: 2 
 
});
<script src="http://www.chartjs.org/assets/Chart.min.js"></script> 
 
<div> 
 
    <canvas id="LineWithLine" width="600" height="400"></canvas> 
 
</div>
を使用していないよう配置する場所、決定するためのポイントを使っているとして、棒グラフに変換しなければなりませんでした

Chart.js 2でこれを行うためのよりよい方法はありますか?おそらく、折れ線グラフと棒グラフの組み合わせを使用して、またはそれは過剰ですか?

あなたたちは私がこれを理解することができますうまくいけば、私はあなたが下記見ることができるようにCSSとJavaScriptを使用して、すでにこのチャートを作成しました

enter image description here

この例では上限がマイナスの値でしたそれは混乱するかもしれない実際の行の下にチャートを描いていますが、主なものは私が選んだ値にプロットされています。 :)

答えて

1

それでもについてdrawing a custom horizontal line in Chart.js 2

私がリンクされquestonへの答えは、この質問を確認し、この問題を持っている場合、それはchart.jsで新しいプラグインを定義しています(Chart.js "サイトでもっとに関する情報)が可能棒グラフとカスタムラインを描画します。プラグインの仕組みをよりよく理解するためのjsfiddleもあります

関連する問題