<template> <ClientOnly> <AppDoc name="ChartDemo" :sources="sources" :dependencies="{ 'chart.js': '3.3.2' }" component="Chart" github="chart/RadarChartDemo.vue" /> </ClientOnly> </template> <script> export default { data() { return { sources: { 'options-api': { tabName: 'Options API Source', content: ` <template> <div> <Chart type="radar" :data="chartData" :options="chartOptions" /> </div> </template> <script> export default { data() { return { chartData: { labels: ['Eating', 'Drinking', 'Sleeping', 'Designing', 'Coding', 'Cycling', 'Running'], datasets: [ { label: 'My First dataset', backgroundColor: 'rgba(179,181,198,0.2)', borderColor: 'rgba(179,181,198,1)', pointBackgroundColor: 'rgba(179,181,198,1)', pointBorderColor: '#fff', pointHoverBackgroundColor: '#fff', pointHoverBorderColor: 'rgba(179,181,198,1)', data: [65, 59, 90, 81, 56, 55, 40] }, { label: 'My Second dataset', backgroundColor: 'rgba(255,99,132,0.2)', borderColor: 'rgba(255,99,132,1)', pointBackgroundColor: 'rgba(255,99,132,1)', pointBorderColor: '#fff', pointHoverBackgroundColor: '#fff', pointHoverBorderColor: 'rgba(255,99,132,1)', data: [28, 48, 40, 19, 96, 27, 100] } ] }, chartOption: { plugins: { legend: { labels: { color: '#495057' } } }, scales: { r: { pointLabels: { color: '#495057', }, grid: { color: '#ebedef', }, angleLines: { color: '#ebedef' } } } } } } } <\\/script> ` }, 'composition-api': { tabName: 'Composition API Source', content: ` <template> <div> <Chart type="radar" :data="chartData" :options="chartOptions" /> </div> </template> <script> import { ref } from 'vue'; export default { setup() { const chartData = ref({ labels: ['Eating', 'Drinking', 'Sleeping', 'Designing', 'Coding', 'Cycling', 'Running'], datasets: [ { label: 'My First dataset', backgroundColor: 'rgba(179,181,198,0.2)', borderColor: 'rgba(179,181,198,1)', pointBackgroundColor: 'rgba(179,181,198,1)', pointBorderColor: '#fff', pointHoverBackgroundColor: '#fff', pointHoverBorderColor: 'rgba(179,181,198,1)', data: [65, 59, 90, 81, 56, 55, 40] }, { label: 'My Second dataset', backgroundColor: 'rgba(255,99,132,0.2)', borderColor: 'rgba(255,99,132,1)', pointBackgroundColor: 'rgba(255,99,132,1)', pointBorderColor: '#fff', pointHoverBackgroundColor: '#fff', pointHoverBorderColor: 'rgba(255,99,132,1)', data: [28, 48, 40, 19, 96, 27, 100] } ] }); const chartOptions = ref({ plugins: { legend: { labels: { color: '#495057' } } }, scales: { r: { pointLabels: { color: '#495057', }, grid: { color: '#ebedef', }, angleLines: { color: '#ebedef' } } } }); return { chartData, chartOptions } } } <\\/script> ` } } }; } }; </script>