Chart.js
νλ¬κ·ΈμΈμ μ΅μ
κ³Ό λ€μν κΈ°λ₯μ μ λΆ λ€ μκ³ μ¬μ©νκΈ΄ μ΄λ €μ°λ
νμν λλ§λ€ μ°Ύμλ³΄κ² λλ€.
κ·Έλ°λ° μκ°λ³΄λ€ λ²μ λ³λ‘ μ μ©νλ κ²λ λ¬λΌμ λΌλ²¨ κ° νμνλλ° μ λ₯Ό μ’ λ¨Ήμλ€.
λ΄κ° μ¬μ©ν chart.js λ²μ μ λ€μκ³Ό κ°λ€
chart.js : 2.9.4
chartjs-plugin-datalabels : 0.7.0
vue-chartjs : 3.5.1
λλ chart.js 2.x λ₯Ό μ¬μ©ν΄μ datalabels λ₯Ό 2.x λ₯Ό μ€μΉνμλλ λμμ νμ§ μμκ³ , 1.xλ‘ λ΄λ Έμλλ λμνμ§ μμλ€.
μ°Ύκ³ μ°Ύμμ 0.7.0
λ²μ μ μ€μΉν΄μμΌ λΌλ²¨ κ°μ νμ ν μ μμλ€.
λ§μ½ chart.js 3.x λ₯Ό μ¬μ©νλ€λ©΄ datalables λ 2.x μ΄μ νμνλ©° μμΈν λ΄μ©μ μλ 곡μλ¬Έμμμ νμΈ ν μ μλ€.
chartjs-plugin-datalabels Getting Started
λ°μ΄ν°λΌλ²¨ κ°μ νμνμ§ μμΌλ©΄,
μ νν μμΉλ₯Ό νμΈνκΈ°μν΄ νλνλ λ§μ°μ€λ₯Ό μ¬λ €μΌνλ λΆνΈν¨μ΄ μλ€.
μ΄λ₯Ό κ°μ νκΈ°μν΄ chartjs-plugin-datalabels
λ₯Ό μ€μΉνκ³ νλ¬κ·ΈμΈμ λͺ
μν΄μ€λ€.
import { HorizontalBar } from "vue-chartjs";
import ChartJSPluginDatalabels from "chartjs-plugin-datalabels";
export default {
extends: HorizontalBar,
plugins: [ChartJSPluginDatalabels],
mounted() {
this.load();
},
methods: {
load() {
this.renderChart(
{
labels: ["January", "February", "March", "April", "May", "June", "July"],
datasets: [
{
labels: "Data One",
backgroundColor: "#5E83BA",
data: [40, 800, 10, 5000, 39, 7800, 7000],
// *** datalabel option μ§μ
datalabels: {
display: true, // defaultλ true, false λ‘ νλ©΄ κ°μ μ¨κΈΈ μ μλ€.
align: "right",
anchor: "end",
color: "#898989",
borderWidth: 2,
padding: {
bottom: 0,
left: 20,
},
},
},
],
},
{
responsive: true,
maintainAspectRatio: false,
tooltips: {
mode: "index", // λΌλ²¨ mouseoverμ tooltips 보μ΄κΈ°
intersect: false,
},
legend: {
display: false, // λ²λ‘ μ¨κΈ°κΈ°
},
}
);
},
},
};
μ΄μ λ°μ΄ν° κ°μ νλμ λ³Ό μ μλ€.
'Vue.js' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Vue.js] Chart.js μ°¨νΈ λ°μ΄ν° 0 μΈ κ° μ¨κΈ°κΈ° (0) | 2022.11.08 |
---|---|
[Vue.js] Chart.js labels hover μ λ°μ΄ν°(tooltip) 보μ΄κΈ° (1) | 2022.11.04 |
[Vue.js] Chart.js λμ λ§λ κ·Έλν μ΄ν© νμνκΈ° (Stack Bar, Total) (1) | 2022.10.25 |
[Vue.js] Hot Reload λμ μν λ (0) | 2022.10.18 |
Vue.js(4) Router λ° Axios, async await κ°λ (1) | 2022.10.09 |
λκΈ