簡體   English   中英

如何更改懸停 Chartjs 上的圖例圖標

[英]How to change legend icon on hover Chartjs

我正在嘗試自定義 chartjs 圖例,以便當您將鼠標懸停在圖例項上時,圖標/點樣式會發生變化。 見截圖截圖 這可能嗎?

我正在嘗試使用 onHover 屬性進行不同的操作,但沒有成功。

 legend: {
            display: true,
            onHover: function (event, legendItem, legend) {
            //Change Point style to icon
            },
            onLeave: function (e) {
            //Change back to normal
            }
        },

是的,這是可能的,您可以更新您懸停的給定數據集的 pointStyle,您可以傳遞任何預定義的 chart.js pointStyles 或文檔中描述的圖像( https://www.chartjs.org/docs /master/configuration/elements.html#point-styles )

例子:

 var options = { type: 'bar', data: { labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"], datasets: [{ label: '# of Votes', data: [12, 19, 3, 5, 2, 3], backgroundColor: 'red' }] }, options: { plugins: { legend: { labels: { usePointStyle: true }, onHover: (evt, item, legend) => { legend.chart.data.datasets[item.datasetIndex].pointStyle = 'rectRot' legend.chart.update(); }, onLeave: (evt, item, legend) => { legend.chart.data.datasets[item.datasetIndex].pointStyle = '' legend.chart.update(); } } } } } var ctx = document.getElementById('chartJSContainer').getContext('2d'); new Chart(ctx, options);
 <body> <canvas id="chartJSContainer" width="600" height="400"></canvas> <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/3.3.2/chart.js"></script> </body>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM