開始するにはI have made a short video to show exactly what I'm running into。Chart.js - マウスオーバーでグラフがちらつき、サイズが変更されます
ビデオを要約すると、Chart.js(2.6.0)を使用している間は、問題なくチャートを作成できます。バー/ポイントにマウスオーバーすると、グラフの要素のサイズが変更されてちらつきます。奇妙なことは、それは完全に矛盾しているということです。ときどきリフレッシュすると、この動作はまったくありません。私が何かの上にマウスを置いてそれをやり始めると、私は再びリフレッシュするか、タブから閉じます(これと矛盾します)。これが発生したときに私はコード内で何も変更しません。それはすべてこれを単独で行います。
これを修正するために、私はSOとChart.jsのドキュメントの他の多くのスレッドをここで参照しました。私の解決策の中で:私はDivsに指定された高さ/幅を追加する点を作った&グラフを作成するCanvas;アニメーションの持続時間を0、ホバーアニメーションの持続時間を0、レスポンシブアニメーションの持続時間を0に設定します。 Responsiveがtrueに設定され、Aspect Ratioをtrueに維持して、ツールチップモードを変更したことを確認しました。これらのすべてを試しましたが、他の小さなものの中ではほとんど効果がないようです。
私は困惑しています!ここで
は(私はJSONデータなど、単にチャートをつかんだかずに)私のチャートのコードのいずれかです。
new Chart($("#runwayChart"), {
type: "horizontalBar"
, data: {
labels: runwayLabels
, datasets: [{
label: "Months Left"
, fill: true
, backgroundColor : "#3333ff"
, borderColor: "#3333ff"
, data: score
}, {
label: "Expenses"
, fill: true
, backgroundColor : "#aa2222"
, borderColor: "#aa2222"
, data: expenses
}, {
label: "Revenue"
, fill: true
, backgroundColor : "#2222aa"
, borderColor: "#2222aa"
, data: revenues
}]
}
, options: {
tooltips: {
mode:'index'
}
, responsive:true
, maintainAspectRatio:true
, animation: {
duration: 0,
}
, hover: {
animationDuration: 0,
}
, responsiveAnimationDuration: 0
}
私はあなたのすべてが持つかもしれない助けをいただければと思います!
感謝=)
ajax成功のコールバック内のチャートコードですか? –
Angularを使用しています。特に、このセクションは、RESTリクエストが成功した場合に起動する.then()の一部です。 –