247 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
			
		
		
	
	
			247 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
/**
 | 
						|
 * Theme: Attex - Responsive Tailwind CSS 3 Admin Dashboard
 | 
						|
 * Author: Coderthemes
 | 
						|
 * Module/App: Apex Boxplot Charts
 | 
						|
 */
 | 
						|
 | 
						|
//
 | 
						|
// BASIC BOXPLOT
 | 
						|
//
 | 
						|
 | 
						|
var colors = ["#3e60d5", "#47ad77", "#fa5c7c"];
 | 
						|
var dataColors = document.querySelector("#basic-boxplot").dataset.colors;
 | 
						|
if (dataColors) {
 | 
						|
    colors = dataColors.split(",");
 | 
						|
}
 | 
						|
 | 
						|
var options = {
 | 
						|
    series: [{
 | 
						|
        type: 'boxPlot',
 | 
						|
        data: [{
 | 
						|
                x: 'Jan 2015',
 | 
						|
                y: [54, 66, 69, 75, 88]
 | 
						|
            },
 | 
						|
            {
 | 
						|
                x: 'Jan 2016',
 | 
						|
                y: [43, 65, 69, 76, 81]
 | 
						|
            },
 | 
						|
            {
 | 
						|
                x: 'Jan 2017',
 | 
						|
                y: [31, 39, 45, 51, 59]
 | 
						|
            },
 | 
						|
            {
 | 
						|
                x: 'Jan 2018',
 | 
						|
                y: [39, 46, 55, 65, 71]
 | 
						|
            },
 | 
						|
            {
 | 
						|
                x: 'Jan 2019',
 | 
						|
                y: [29, 31, 35, 39, 44]
 | 
						|
            },
 | 
						|
            {
 | 
						|
                x: 'Jan 2020',
 | 
						|
                y: [41, 49, 58, 61, 67]
 | 
						|
            },
 | 
						|
            {
 | 
						|
                x: 'Jan 2021',
 | 
						|
                y: [54, 59, 66, 71, 88]
 | 
						|
            }
 | 
						|
        ]
 | 
						|
    }],
 | 
						|
    chart: {
 | 
						|
        type: 'boxPlot',
 | 
						|
        height: 350,
 | 
						|
        toolbar: {
 | 
						|
            show: false
 | 
						|
        }
 | 
						|
    },
 | 
						|
    plotOptions: {
 | 
						|
        boxPlot: {
 | 
						|
            colors: {
 | 
						|
                upper: colors[0],
 | 
						|
                lower: colors[1]
 | 
						|
            }
 | 
						|
        }
 | 
						|
    },
 | 
						|
    stroke: {
 | 
						|
        colors: ['#a1a9b1']
 | 
						|
    }
 | 
						|
};
 | 
						|
 | 
						|
var chart = new ApexCharts(document.querySelector("#basic-boxplot"), options);
 | 
						|
chart.render();
 | 
						|
 | 
						|
 | 
						|
//
 | 
						|
// SCATTER BOXPLOT
 | 
						|
//
 | 
						|
 | 
						|
var colors = ["#3e60d5", "#47ad77", "#fa5c7c"];
 | 
						|
var dataColors = document.querySelector("#scatter-boxplot").dataset.colors;
 | 
						|
if (dataColors) {
 | 
						|
    colors = dataColors.split(",");
 | 
						|
}
 | 
						|
 | 
						|
var options = {
 | 
						|
    series: [{
 | 
						|
            name: 'Box',
 | 
						|
            type: 'boxPlot',
 | 
						|
            data: [{
 | 
						|
                    x: new Date('2017-01-01').getTime(),
 | 
						|
                    y: [54, 66, 69, 75, 88]
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    x: new Date('2018-01-01').getTime(),
 | 
						|
                    y: [43, 65, 69, 76, 81]
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    x: new Date('2019-01-01').getTime(),
 | 
						|
                    y: [31, 39, 45, 51, 59]
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    x: new Date('2020-01-01').getTime(),
 | 
						|
                    y: [39, 46, 55, 65, 71]
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    x: new Date('2021-01-01').getTime(),
 | 
						|
                    y: [29, 31, 35, 39, 44]
 | 
						|
                }
 | 
						|
            ]
 | 
						|
        },
 | 
						|
        {
 | 
						|
            name: 'Outliers',
 | 
						|
            type: 'scatter',
 | 
						|
            data: [{
 | 
						|
                    x: new Date('2017-01-01').getTime(),
 | 
						|
                    y: 32
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    x: new Date('2018-01-01').getTime(),
 | 
						|
                    y: 25
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    x: new Date('2019-01-01').getTime(),
 | 
						|
                    y: 64
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    x: new Date('2020-01-01').getTime(),
 | 
						|
                    y: 27
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    x: new Date('2020-01-01').getTime(),
 | 
						|
                    y: 78
 | 
						|
                },
 | 
						|
                {
 | 
						|
                    x: new Date('2021-01-01').getTime(),
 | 
						|
                    y: 15
 | 
						|
                }
 | 
						|
            ]
 | 
						|
        }
 | 
						|
    ],
 | 
						|
    chart: {
 | 
						|
        type: 'boxPlot',
 | 
						|
        height: 350
 | 
						|
    },
 | 
						|
    colors: colors,
 | 
						|
    stroke: {
 | 
						|
        colors: ['#a1a9b1']
 | 
						|
    },
 | 
						|
    legend: {
 | 
						|
        offsetY: 10,
 | 
						|
    },
 | 
						|
    xaxis: {
 | 
						|
        type: 'datetime',
 | 
						|
        tooltip: {
 | 
						|
            formatter: function (val) {
 | 
						|
                return new Date(val).getFullYear()
 | 
						|
            }
 | 
						|
        }
 | 
						|
    },
 | 
						|
    grid: {
 | 
						|
        padding: {
 | 
						|
            bottom: 5
 | 
						|
        }
 | 
						|
    },
 | 
						|
    tooltip: {
 | 
						|
        shared: false,
 | 
						|
        intersect: true
 | 
						|
    },
 | 
						|
    plotOptions: {
 | 
						|
        boxPlot: {
 | 
						|
            colors: {
 | 
						|
                upper: colors[0],
 | 
						|
                lower: colors[1]
 | 
						|
            }
 | 
						|
        }
 | 
						|
    },
 | 
						|
};
 | 
						|
 | 
						|
var chart = new ApexCharts(document.querySelector("#scatter-boxplot"), options);
 | 
						|
chart.render();
 | 
						|
 | 
						|
 | 
						|
 | 
						|
//
 | 
						|
// HORIZONTAL BOXPLOT
 | 
						|
//
 | 
						|
 | 
						|
var colors = ["#3e60d5", "#47ad77", "#fa5c7c"];
 | 
						|
var dataColors = document.querySelector("#horizontal-boxplot").dataset.colors;
 | 
						|
if (dataColors) {
 | 
						|
    colors = dataColors.split(",");
 | 
						|
}
 | 
						|
 | 
						|
var options = {
 | 
						|
    series: [{
 | 
						|
        data: [{
 | 
						|
                x: 'Category A',
 | 
						|
                y: [54, 66, 69, 75, 88]
 | 
						|
            },
 | 
						|
            {
 | 
						|
                x: 'Category B',
 | 
						|
                y: [43, 65, 69, 76, 81]
 | 
						|
            },
 | 
						|
            {
 | 
						|
                x: 'Category C',
 | 
						|
                y: [31, 39, 45, 51, 59]
 | 
						|
            },
 | 
						|
            {
 | 
						|
                x: 'Category D',
 | 
						|
                y: [39, 46, 55, 65, 71]
 | 
						|
            },
 | 
						|
            {
 | 
						|
                x: 'Category E',
 | 
						|
                y: [29, 31, 35, 39, 44]
 | 
						|
            },
 | 
						|
            {
 | 
						|
                x: 'Category F',
 | 
						|
                y: [41, 49, 58, 61, 67]
 | 
						|
            },
 | 
						|
            {
 | 
						|
                x: 'Category G',
 | 
						|
                y: [54, 59, 66, 71, 88]
 | 
						|
            }
 | 
						|
        ]
 | 
						|
    }],
 | 
						|
    chart: {
 | 
						|
        type: 'boxPlot',
 | 
						|
        height: 350
 | 
						|
    },
 | 
						|
    plotOptions: {
 | 
						|
        bar: {
 | 
						|
            horizontal: true,
 | 
						|
            barHeight: '50%'
 | 
						|
        },
 | 
						|
        boxPlot: {
 | 
						|
            colors: {
 | 
						|
                upper: colors[0],
 | 
						|
                lower: colors[1]
 | 
						|
            }
 | 
						|
        }
 | 
						|
    },
 | 
						|
    stroke: {
 | 
						|
        colors: ['#a1a9b1']
 | 
						|
    }
 | 
						|
};
 | 
						|
 | 
						|
var chart = new ApexCharts(document.querySelector("#horizontal-boxplot"), options);
 | 
						|
chart.render(); |