vue-chartjsとchartjs-plugin-annotationでグラフの中に横線を表示しようと考えています。
グラフは表示されオプションも適用されているのですが、annotation内で設定した部分が効いていないためか横線が表示されません。
どなたか解決方法をご存じの方がいらっしゃいましたら、教えていただけますか。
バージョンとコードは以下の通りです。
Chart.js v2.9.4
chartjs-plugin-annotation v0.5.7
javascript
1import { Bar } from 'vue-chartjs' 2import chartjsPluginAnnotation from 'chartjs-plugin-annotation' 3export default { 4 extends: Bar, 5 props: ["chartData", "options"], 6 mounted() { 7 this.addPlugin(chartjsPluginAnnotation), 8 this.renderChart(this.chartData, this.options) 9 } 10}
Vue
1<template> 2 <Chart :chartData="chartItems" :options="chartOptions"/> 3</template> 4 5<script> 6 import Chart from './Chart.js' 7 export default { 8 components: { 9 Chart 10 }, 11 data() { 12 return { 13 chartItems: { 14 labels: ["12月", "1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月"], 15 datasets: [{ 16 label: "月ごとの数", 17 data: [9500, 12000, 19000, 15000, 9500, 5000, 10000, 14000, 9500, 8000, 4500, 7000], 18 backgroundColor: 'lightblue' 19 }] 20 }, 21 22 // Chart用表示オプション 23 chartOptions: { 24 // 凡例非表示 25 legend: { 26 display: false 27 }, 28 scales: { 29 xAxes: [{ 30 display: true, 31 // X軸グリッド非表示 32 gridLines: { 33 display:false 34 } 35 }], 36 // Y軸 37 yAxes: [{ 38 display: true, 39 id: 'y-axis-0', 40 position: 'right', 41 ticks: { 42 // 0から始まる 43 beginAtZero: true, 44 // 最大5目盛 45 maxTicksLimit: 5, 46 // 3桁区切り 47 userCallback: (label, index, labels) => label.toLocaleString() 48 }, 49 }] 50 }, 51 annotation: { 52 annotations: [{ 53 type: 'line', 54 id: 'hLine', 55 mode: 'horizontal', 56 scaleID: 'y-axis-0', 57 value: 3, 58 borderWidth: 2, 59 borderColor: 'black' 60 }] 61 }, 62 // ホバーの際にグラフの値を表示しない 63 tooltips: { 64 enabled: false 65 }, 66 // アニメーションなし 67 animation: { 68 duration: 0 69 } 70 } 71 } 72 } 73 } 74</script>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。