438 lines
		
	
	
		
			9.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
			
		
		
	
	
			438 lines
		
	
	
		
			9.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
/**
 | 
						|
 * Theme: Attex - Responsive Tailwind CSS 3 Admin Dashboard
 | 
						|
 * Author: Coderthemes
 | 
						|
 * Module/App: Apex RadialBar Charts
 | 
						|
 */
 | 
						|
 | 
						|
//
 | 
						|
// BASIC RADIALBAR CHART
 | 
						|
//
 | 
						|
var colors = ["#39afd1"];
 | 
						|
var dataColors = document.querySelector("#basic-radialbar").dataset.colors;
 | 
						|
if (dataColors) {
 | 
						|
    colors = dataColors.split(",");
 | 
						|
}
 | 
						|
var options = {
 | 
						|
    chart: {
 | 
						|
        height: 320,
 | 
						|
        type: 'radialBar',
 | 
						|
    },
 | 
						|
    plotOptions: {
 | 
						|
        radialBar: {
 | 
						|
            hollow: {
 | 
						|
                size: '70%',
 | 
						|
            },
 | 
						|
            track: {
 | 
						|
                background: "rgba(170,184,197, 0.2)"
 | 
						|
            }
 | 
						|
        },
 | 
						|
    },
 | 
						|
    colors: colors,
 | 
						|
    series: [70],
 | 
						|
    labels: ['CRICKET'],
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
var chart = new ApexCharts(
 | 
						|
    document.querySelector("#basic-radialbar"),
 | 
						|
    options
 | 
						|
);
 | 
						|
 | 
						|
chart.render();
 | 
						|
 | 
						|
 | 
						|
//
 | 
						|
// MULTIPLE RADIALBARS
 | 
						|
//
 | 
						|
var colors = ["#6c757d", "#ffbc00", "#3e60d5", "#47ad77"];
 | 
						|
var dataColors = document.querySelector("#multiple-radialbar").dataset.colors;
 | 
						|
if (dataColors) {
 | 
						|
    colors = dataColors.split(",");
 | 
						|
}
 | 
						|
var options = {
 | 
						|
    chart: {
 | 
						|
        height: 320,
 | 
						|
        type: 'radialBar',
 | 
						|
    },
 | 
						|
    plotOptions: {
 | 
						|
        circle: {
 | 
						|
            dataLabels: {
 | 
						|
                showOn: 'hover'
 | 
						|
            }
 | 
						|
        },
 | 
						|
        radialBar: {
 | 
						|
            track: {
 | 
						|
                background: "rgba(170,184,197, 0.2)"
 | 
						|
            }
 | 
						|
        }
 | 
						|
    },
 | 
						|
    colors: colors,
 | 
						|
    series: [44, 55, 67, 83],
 | 
						|
    labels: ['Apples', 'Oranges', 'Bananas', 'Berries'],
 | 
						|
    responsive: [{
 | 
						|
        breakpoint: 380,
 | 
						|
        options: {
 | 
						|
            chart: {
 | 
						|
                height: 260,
 | 
						|
            }
 | 
						|
        }
 | 
						|
    }]
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
var chart = new ApexCharts(
 | 
						|
    document.querySelector("#multiple-radialbar"),
 | 
						|
    options
 | 
						|
);
 | 
						|
 | 
						|
chart.render();
 | 
						|
 | 
						|
 | 
						|
//
 | 
						|
// CIRCLE CHART - CUSTOM ANGLE
 | 
						|
//
 | 
						|
var colors = ['#47ad77', '#3e60d5'];
 | 
						|
var dataColors = document.querySelector("#circle-angle-radial").dataset.colors;
 | 
						|
if (dataColors) {
 | 
						|
    colors = dataColors.split(",");
 | 
						|
}
 | 
						|
var options = {
 | 
						|
    chart: {
 | 
						|
        height: 380,
 | 
						|
        type: 'radialBar',
 | 
						|
    },
 | 
						|
    plotOptions: {
 | 
						|
        radialBar: {
 | 
						|
            offsetY: -30,
 | 
						|
            startAngle: 0,
 | 
						|
            endAngle: 270,
 | 
						|
            hollow: {
 | 
						|
                margin: 5,
 | 
						|
                size: '30%',
 | 
						|
                background: 'transparent',
 | 
						|
                image: undefined,
 | 
						|
            },
 | 
						|
            track: {
 | 
						|
                background: "rgba(170,184,197, 0.2)"
 | 
						|
            },
 | 
						|
            dataLabels: {
 | 
						|
                name: {
 | 
						|
                    show: false,
 | 
						|
 | 
						|
                },
 | 
						|
                value: {
 | 
						|
                    show: false,
 | 
						|
                }
 | 
						|
            }
 | 
						|
        }
 | 
						|
    },
 | 
						|
    colors: colors,
 | 
						|
    series: [76, 67, 61, 90],
 | 
						|
    labels: ['Vimeo', 'Messenger', 'Facebook', 'LinkedIn'],
 | 
						|
    legend: {
 | 
						|
        show: true,
 | 
						|
        floating: true,
 | 
						|
        fontSize: '13px',
 | 
						|
        position: 'left',
 | 
						|
        offsetX: 10,
 | 
						|
        offsetY: 10,
 | 
						|
        labels: {
 | 
						|
            useSeriesColors: true,
 | 
						|
        },
 | 
						|
        markers: {
 | 
						|
            size: 0
 | 
						|
        },
 | 
						|
        formatter: function (seriesName, opts) {
 | 
						|
            return seriesName + ":  " + opts.w.globals.series[opts.seriesIndex]
 | 
						|
        },
 | 
						|
        itemMargin: {
 | 
						|
            horizontal: 1,
 | 
						|
        }
 | 
						|
    },
 | 
						|
    responsive: [{
 | 
						|
        breakpoint: 480,
 | 
						|
        options: {
 | 
						|
            legend: {
 | 
						|
                show: false
 | 
						|
            }
 | 
						|
        }
 | 
						|
    }]
 | 
						|
}
 | 
						|
 | 
						|
var chart = new ApexCharts(
 | 
						|
    document.querySelector("#circle-angle-radial"),
 | 
						|
    options
 | 
						|
);
 | 
						|
 | 
						|
chart.render();
 | 
						|
 | 
						|
 | 
						|
//
 | 
						|
// CIRCLE CHART WITH IMAGE
 | 
						|
//
 | 
						|
 | 
						|
var options = {
 | 
						|
    chart: {
 | 
						|
        height: 360,
 | 
						|
        type: 'radialBar',
 | 
						|
    },
 | 
						|
    fill: {
 | 
						|
        type: 'image',
 | 
						|
        image: {
 | 
						|
            src: ['assets/images/small/small-2.jpg'],
 | 
						|
        }
 | 
						|
    },
 | 
						|
    plotOptions: {
 | 
						|
        radialBar: {
 | 
						|
            hollow: {
 | 
						|
                size: '70%',
 | 
						|
            }
 | 
						|
        },
 | 
						|
    },
 | 
						|
    series: [70],
 | 
						|
    stroke: {
 | 
						|
        lineCap: 'round'
 | 
						|
    },
 | 
						|
    labels: ['Volatility'],
 | 
						|
    responsive: [{
 | 
						|
        breakpoint: 380,
 | 
						|
        options: {
 | 
						|
            chart: {
 | 
						|
                height: 280
 | 
						|
            }
 | 
						|
        }
 | 
						|
    }]
 | 
						|
}
 | 
						|
 | 
						|
var chart = new ApexCharts(
 | 
						|
    document.querySelector("#image-radial"),
 | 
						|
    options
 | 
						|
);
 | 
						|
 | 
						|
chart.render();
 | 
						|
 | 
						|
 | 
						|
//
 | 
						|
// STROKED CIRCULAR GUAGE
 | 
						|
//
 | 
						|
var colors = ["#3e60d5"];
 | 
						|
var dataColors = document.querySelector("#stroked-guage-radial").dataset.colors;
 | 
						|
if (dataColors) {
 | 
						|
    colors = dataColors.split(",");
 | 
						|
}
 | 
						|
var options = {
 | 
						|
    chart: {
 | 
						|
        height: 380,
 | 
						|
        type: 'radialBar',
 | 
						|
    },
 | 
						|
    plotOptions: {
 | 
						|
        radialBar: {
 | 
						|
            startAngle: -135,
 | 
						|
            endAngle: 135,
 | 
						|
            dataLabels: {
 | 
						|
                name: {
 | 
						|
                    fontSize: '16px',
 | 
						|
                    color: undefined,
 | 
						|
                    offsetY: 120
 | 
						|
                },
 | 
						|
                value: {
 | 
						|
                    offsetY: 76,
 | 
						|
                    fontSize: '22px',
 | 
						|
                    color: undefined,
 | 
						|
                    formatter: function (val) {
 | 
						|
                        return val + "%";
 | 
						|
                    }
 | 
						|
                }
 | 
						|
            },
 | 
						|
            track: {
 | 
						|
                background: "rgba(170,184,197, 0.2)",
 | 
						|
                margin: 0
 | 
						|
            },
 | 
						|
        }
 | 
						|
    },
 | 
						|
    fill: {
 | 
						|
        gradient: {
 | 
						|
            enabled: true,
 | 
						|
            shade: 'dark',
 | 
						|
            shadeIntensity: 0.2,
 | 
						|
            inverseColors: false,
 | 
						|
            opacityFrom: 1,
 | 
						|
            opacityTo: 1,
 | 
						|
            stops: [0, 50, 65, 91]
 | 
						|
        },
 | 
						|
    },
 | 
						|
    stroke: {
 | 
						|
        dashArray: 4
 | 
						|
    },
 | 
						|
    colors: colors,
 | 
						|
    series: [67],
 | 
						|
    labels: ['Median Ratio'],
 | 
						|
    responsive: [{
 | 
						|
        breakpoint: 380,
 | 
						|
        options: {
 | 
						|
            chart: {
 | 
						|
                height: 280
 | 
						|
            }
 | 
						|
        }
 | 
						|
    }]
 | 
						|
}
 | 
						|
 | 
						|
var chart = new ApexCharts(
 | 
						|
    document.querySelector("#stroked-guage-radial"),
 | 
						|
    options
 | 
						|
);
 | 
						|
 | 
						|
chart.render();
 | 
						|
 | 
						|
// window.setInterval(function () {
 | 
						|
//     chart.updateSeries([Math.floor(Math.random() * (100 - 1 + 1)) + 1])
 | 
						|
// }, 2000)
 | 
						|
 | 
						|
 | 
						|
//
 | 
						|
// GRADIENT CIRCULAR CHART
 | 
						|
//
 | 
						|
var colors = ["#8f75da", "#3e60d5"];
 | 
						|
var dataColors = document.querySelector("#gradient-chart").dataset.colors;
 | 
						|
if (dataColors) {
 | 
						|
    colors = dataColors.split(",");
 | 
						|
}
 | 
						|
var options = {
 | 
						|
    chart: {
 | 
						|
        height: 330,
 | 
						|
        type: 'radialBar',
 | 
						|
        toolbar: {
 | 
						|
            show: true
 | 
						|
        }
 | 
						|
    },
 | 
						|
    plotOptions: {
 | 
						|
        radialBar: {
 | 
						|
            startAngle: -135,
 | 
						|
            endAngle: 225,
 | 
						|
            hollow: {
 | 
						|
                margin: 0,
 | 
						|
                size: '70%',
 | 
						|
                background: 'transparent',
 | 
						|
                image: undefined,
 | 
						|
                imageOffsetX: 0,
 | 
						|
                imageOffsetY: 0,
 | 
						|
                position: 'front',
 | 
						|
                dropShadow: {
 | 
						|
                    enabled: true,
 | 
						|
                    top: 3,
 | 
						|
                    left: 0,
 | 
						|
                    blur: 4,
 | 
						|
                    opacity: 0.24
 | 
						|
                }
 | 
						|
            },
 | 
						|
            track: {
 | 
						|
                background: "rgba(170,184,197, 0.2)",
 | 
						|
                strokeWidth: '67%',
 | 
						|
                margin: 0
 | 
						|
            },
 | 
						|
 | 
						|
            dataLabels: {
 | 
						|
                showOn: 'always',
 | 
						|
                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: colors,
 | 
						|
            inverseColors: true,
 | 
						|
            opacityFrom: 1,
 | 
						|
            opacityTo: 1,
 | 
						|
            stops: [0, 100]
 | 
						|
        }
 | 
						|
    },
 | 
						|
    series: [75],
 | 
						|
    stroke: {
 | 
						|
        lineCap: 'round'
 | 
						|
    },
 | 
						|
    labels: ['Percent'],
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
var chart = new ApexCharts(
 | 
						|
    document.querySelector("#gradient-chart"),
 | 
						|
    options
 | 
						|
);
 | 
						|
 | 
						|
chart.render();
 | 
						|
 | 
						|
 | 
						|
//
 | 
						|
// SEMI CIRCLE GAUGE
 | 
						|
//
 | 
						|
 | 
						|
var colors = ["#8f75da", "#3e60d5"];
 | 
						|
var dataColors = document.querySelector("#gradient-chart").dataset.colors;
 | 
						|
if (dataColors) {
 | 
						|
    colors = dataColors.split(",");
 | 
						|
}
 | 
						|
 | 
						|
var options = {
 | 
						|
    series: [76],
 | 
						|
    chart: {
 | 
						|
        type: 'radialBar',
 | 
						|
        offsetY: -20,
 | 
						|
        sparkline: {
 | 
						|
            enabled: true
 | 
						|
        }
 | 
						|
    },
 | 
						|
    plotOptions: {
 | 
						|
        radialBar: {
 | 
						|
            startAngle: -90,
 | 
						|
            endAngle: 90,
 | 
						|
            track: {
 | 
						|
                background: "rgba(170,184,197, 0.2)",
 | 
						|
                strokeWidth: '97%',
 | 
						|
                margin: 5, // margin is in pixels
 | 
						|
                dropShadow: {
 | 
						|
                    top: 2,
 | 
						|
                    left: 0,
 | 
						|
                    color: '#eef2f7',
 | 
						|
                    opacity: 1,
 | 
						|
                    blur: 2
 | 
						|
                }
 | 
						|
            },
 | 
						|
            dataLabels: {
 | 
						|
                name: {
 | 
						|
                    show: false
 | 
						|
                },
 | 
						|
                value: {
 | 
						|
                    offsetY: -2,
 | 
						|
                    fontSize: '22px'
 | 
						|
                }
 | 
						|
            }
 | 
						|
        }
 | 
						|
    },
 | 
						|
    grid: {
 | 
						|
        padding: {
 | 
						|
            top: -10
 | 
						|
        }
 | 
						|
    },
 | 
						|
    colors: colors,
 | 
						|
    labels: ['Average Results'],
 | 
						|
};
 | 
						|
 | 
						|
var chart = new ApexCharts(document.querySelector("#semi-circle-gauge"), options);
 | 
						|
chart.render(); |