Chart.js を使用して、特定の条件下でデータセットの特定のデータ ポイントに対するホバー効果を無効にしたいと考えています。
基本的に、折れ線グラフを描画する前にデータセットを変更して、希望どおりに見えるようにする必要があります。(たとえば、x 軸に沿って線を延長します)そして、これらのデータ ポイントの一部でホバー効果を発生させたくありません。
ビジネス ロジックを実装した後、スクリプト可能なオプションを探して 、ユーザーがいるデータ ポイントに関するコンテキストを使用できるようにしました。基本的に、単一のグラフですべてのホバー効果をキャンセルするためのソリューションに出くわしましたが、前述のように条件付きではありません。
コンテキストでonHoverを使用し、条件付きで hoverRadius を設定しようとしましたが、期待どおりに見えますが、「オブジェクトのプロパティ 'hoverRadius' の読み取り専用に割り当てることはできません」というエラーが表示されます。
// in the options object
onHover: function (event, context) {
if (!isEmpty(context)) {
context[0]._options.hoverRadius = 0;
}
}
ほとんどの場合、関連オブジェクトは意図的に不変にされています。
それでは、Chart.js でこの動作を実装する正しい方法は何でしょうか?