困った・操作方法

Chart.jsの凡例をクリックした時に非表示しないようにする

BoundWorks
Chart.jsのロゴ

みんな大好きChart.jsですが、高機能すぎて、ユーザーにとって想定外の挙動となる場合もあるようです。

Chart.jsには、凡例をクリックすると、クリックした系列や要素をグラフから非表示にできます。

この機能でグラフが読みやすくなる便利な機能です。

1つの系列のみのグラフの凡例を非表示にしたい

例えば、1つの系列のみで構成されたグラフの場合には、グラフが単に表示と非表示を繰り返すだけで、そのメリットがありません。

混乱しないように、あらかじめ非表示にしておきたい。そんな場合もあるかと思います。

凡例クリック時のコールバックが用意されている

Chart.jsのLegend設定を読むと、onClickというコールバックが用意されています。

あとは、何も返さないようにコードを書けば完了です。

options: {
  legend: {
    onClick: function () { return false }
  }
},

書き込む部分は、optionsの設定項目として入力します。今回は、onClickの時、何も返さないようにreturn falseとしました。

とてもニッチですが、どなたかの参考になれば幸いです。