Chart.jsでボタンをクリックするとデータラベルと数値を変更したい場合、どのように実現すべきでしょうか。現在、他のサンプルコードを元に同じボタンをクリックするとラベルと中身が更新できるようになりました。
この場合には、同じボタンでクリックするこでデータが更新されますが、このボタンを3つに分け、ボタン1, ボタン2,ボタン3でそれぞれ該当データが表示されるようにしたいです。
3種類のデータ
document.addEventListener('DOMContentLoaded', function() { var myData = [ { labels: ["1月","2月","3月"], data: [2000,500,150] }, { labels: ["2010年","2011年","2012年"], data: [500,2000,500] }, { labels: ["月曜日","火曜日","水曜日"], data: [200,12000,3000] } ]; var selectedIndex = 0;
データのスイッチ
// Bar Chart Switch var ctx = document.getElementById("BarChart").getContext("2d"); var chart = new Chart(ctx, { type: 'bar', data:{ labels: myData[selectedIndex].labels, datasets:[{ data: myData[selectedIndex].data }] }, options: {} });
ボタンのクリックアクション
// Bar Chart Switch button document.getElementById('button') .addEventListener('click',function() { selectedIndex = (selectedIndex+1) % 3; chart.data.labels = myData[selectedIndex].labels; chart.data.datasets[0].data = myData[selectedIndex].data; chart.update(); } ); });
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/12/07 03:18