Chart.js νλ¬κ·ΈμΈμ μ²μ μ¬μ©ν λλ custom μ΄ μ½μ§ μμ 보μλλ°,
μ΄κ² μ κ² μ μ©νλ€ λ³΄λ μμλ λ΄κ° μ λͺ°λλ κ²μ΄μλ€.
λμ μ°¨νΈλ₯Ό λ§λ€κ³ λμ μλμ κ°μ΄ Mon ~ Sun κΉμ§ κ°μ΄ 0μΈ λ°μ΄ν°κΉμ§ νμνλ κ²μ λΆνμνλ€ μκ°λμλ€.
μ΄μ κ²μκΈμμ total κ°μ λνλ΄λ κ²μ νμ©νμ¬ 0 μΈ λ°μ΄ν°λ€μ μ¨κ²¨λ³Ό κ²μ΄λ€.
tooltips: {
callbacks: {
footer: function (data) { // λμ μ΄ν©μ λνλ΄λ μ½λ
var total = 0;
for (var i = 0; i < data.length; i++) {
total += data[i].xLabel;
}
return "Total: " + total;
},
// μΆκ°λ μ½λ
label: function (tooltipItem, data) {
console.log(tooltipItem);
console.log(data);
},
},
},
μ°μ console.log μ ν΅ν΄ tooltipItem κ³Ό data κ° μ΄λ€ κ°μ κ°μ§κ³ μλμ§ μΆλ ₯ν΄ λ³΄μλ€.
A
λ§λ κ·Έλνλ₯Ό μ ν νμ λ
tooltipItem κ°
Mon ~ Sun κΉμ§ A
μ κ°λ€μ μΆλ ₯νμλ€.
μ¬κΈ°μ datasetIndex : 0 μ Mon
μ΄κ³ datasetIndex : 6 μ Sun
μ κ°λ¦¬ν¨λ€.
xLabel μ΄ 0 μ΄λ―λ‘ μ΄ λ°μ΄ν°λ μ¨κ²¨μΌνλ€.
data κ°
tooltipItem
μ΄ μ νν λ§λ κ·Έλν λ°μ΄ν°λ₯Ό κ°μ§κ³ μλ€λ©΄,data
λ μμΌλ³
μ 체 λ°μ΄ν°λ₯Ό κ°μ§κ³ μλ€.
μ΄λ₯Ό μ΄μ©ν΄μ νμ μλ κ°μ΄ 0μΈ λ°μ΄ν°λ₯Ό μ¨κ²¨λ³΄λλ‘ νκ² λ€.
tooltips: {
callbacks: {
footer: function (data) { // λμ μ΄ν©μ λνλ΄λ μ½λ
var total = 0;
for (var i = 0; i < data.length; i++) {
total += data[i].xLabel;
}
return "Total: " + total;
},
// μΆκ°λ μ½λ
label: function (tooltipItem, data) {
var value = null; // null λ‘ μ΄κΈ°νλ₯Ό ν΅ν΄ κ°μ΄ μμΌλ©΄ μ°¨νΈμ κ·Έλ €μ§μ§ μμ
if (tooltipItem.xLabel > 0) {
value =
data.datasets[tooltipItem.datasetIndex].label +
" : " +
tooltipItem.xLabel;
}
return value;
},
},
},
κ°μ΄ μλ λ°μ΄ν°λ§ νν ν μ μκ²λμλ€.
'Vue.js' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Vue.js] chunk-venders.js μ©λ μ€μ΄κΈ° λ° μλ κ°μ (2) | 2023.05.18 |
---|---|
[Vue.js] Chart.js labels hover μ λ°μ΄ν°(tooltip) 보μ΄κΈ° (1) | 2022.11.04 |
[Vue.js] Char.js λΌλ²¨ κ°(value) νμνκΈ° (1) | 2022.10.28 |
[Vue.js] Chart.js λμ λ§λ κ·Έλν μ΄ν© νμνκΈ° (Stack Bar, Total) (1) | 2022.10.25 |
[Vue.js] Hot Reload λμ μν λ (0) | 2022.10.18 |
λκΈ