<template>
<div>
<div id="card">
<div id="chart">
<apexchart
type="radialBar"
height="350"
:options="chartOptions"
:series="series"
></apexchart>
</div>
</div>
</div>
</template>
<script>
import VueApexCharts from 'vue-apexcharts'
export default {
components: {
apexchart: VueApexCharts,
},
data: function () {
return {
series: [76],
chartOptions: {
chart: {
height: 350,
type: 'radialBar',
toolbar: {
show: true,
},
},
plotOptions: {
radialBar: {
startAngle: -135,
endAngle: 225,
hollow: {
margin: 0,
size: '70%',
background: '#fff',
image: undefined,
imageOffsetX: 0,
imageOffsetY: 0,
position: 'front',
dropShadow: {
enabled: true,
top: 3,
left: 0,
blur: 4,
opacity: 0.5,
},
},
track: {
background: '#fff',
strokeWidth: '67%',
margin: 0, // margin is in pixels
dropShadow: {
enabled: true,
top: -3,
left: 0,
blur: 4,
opacity: 0.7,
},
},
dataLabels: {
show: true,
name: {
offsetY: -10,
show: true,
color: '#888',
fontSize: '17px',
},
value: {
formatter: function (val) {
return parseInt(val)
},
color: '#111',
fontSize: '36px',
show: true,
},
},
},
},
fill: {
type: 'gradient',
gradient: {
shade: 'dark',
type: 'horizontal',
shadeIntensity: 0.5,
gradientToColors: ['#ABE5A1'],
inverseColors: true,
opacityFrom: 1,
opacityTo: 1,
stops: [0, 100],
},
},
stroke: {
lineCap: 'round',
},
labels: ['On-time Delivery'],
},
}
},
}
</script>
<style>
#card {
background: #fff;
max-width: 650px;
margin: 35px auto;
padding: 0px;
text-align: center;
}
h2 {
font-size: 18px;
margin-bottom: 0;
color: rgb(192, 192, 192);
}
h1 {
font-size: 22px;
margin-top: 0;
color: #333;
}
.footer {
position: absolute;
bottom: 16px;
left: 0;
right: 0;
font-size: 14px;
text-align: center;
}
</style>