You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

193 lines
4.1 KiB

const width_threshold = 480;
function drawLineChart() {
if ($("#lineChart").length) {
ctxLine = document.getElementById("lineChart").getContext("2d");
optionsLine = {
scales: {
yAxes: [
{
scaleLabel: {
display: true,
labelString: "Hits"
}
}
]
}
};
// Set aspect ratio based on window width
optionsLine.maintainAspectRatio =
$(window).width() < width_threshold ? false : true;
configLine = {
type: "line",
data: {
labels: [
"January",
"February",
"March",
"April",
"May",
"June",
"July"
],
datasets: [
{
label: "Latest Hits",
data: [88, 68, 79, 57, 50, 55, 70],
fill: false,
borderColor: "rgb(75, 192, 192)",
cubicInterpolationMode: "monotone",
pointRadius: 0
},
{
label: "Popular Hits",
data: [33, 45, 37, 21, 55, 74, 69],
fill: false,
borderColor: "rgba(255,99,132,1)",
cubicInterpolationMode: "monotone",
pointRadius: 0
},
{
label: "Featured",
data: [44, 19, 38, 46, 85, 66, 79],
fill: false,
borderColor: "rgba(153, 102, 255, 1)",
cubicInterpolationMode: "monotone",
pointRadius: 0
}
]
},
options: optionsLine
};
lineChart = new Chart(ctxLine, configLine);
}
}
function drawBarChart() {
if ($("#barChart").length) {
ctxBar = document.getElementById("barChart").getContext("2d");
optionsBar = {
responsive: true,
scales: {
yAxes: [
{
barPercentage: 0.2,
ticks: {
beginAtZero: true
},
scaleLabel: {
display: true,
labelString: "Hits"
}
}
]
}
};
optionsBar.maintainAspectRatio =
$(window).width() < width_threshold ? false : true;
/**
* COLOR CODES
* Red: #F7604D
* Aqua: #4ED6B8
* Green: #A8D582
* Yellow: #D7D768
* Purple: #9D66CC
* Orange: #DB9C3F
* Blue: #3889FC
*/
configBar = {
type: "horizontalBar",
data: {
labels: ["Red", "Aqua", "Green", "Yellow", "Purple", "Orange", "Blue"],
datasets: [
{
label: "# of Hits",
data: [33, 40, 28, 49, 58, 38, 44],
backgroundColor: [
"#F7604D",
"#4ED6B8",
"#A8D582",
"#D7D768",
"#9D66CC",
"#DB9C3F",
"#3889FC"
],
borderWidth: 0
}
]
},
options: optionsBar
};
barChart = new Chart(ctxBar, configBar);
}
}
function drawPieChart() {
if ($("#pieChart").length) {
var chartHeight = 300;
$("#pieChartContainer").css("height", chartHeight + "px");
ctxPie = document.getElementById("pieChart").getContext("2d");
optionsPie = {
responsive: true,
maintainAspectRatio: false,
layout: {
padding: {
left: 10,
right: 10,
top: 10,
bottom: 10
}
},
legend: {
position: "top"
}
};
configPie = {
type: "pie",
data: {
datasets: [
{
data: [18.24, 6.5, 9.15],
backgroundColor: ["#F7604D", "#4ED6B8", "#A8D582"],
label: "Storage"
}
],
labels: [
"Used Storage (18.240GB)",
"System Storage (6.500GB)",
"Available Storage (9.150GB)"
]
},
options: optionsPie
};
pieChart = new Chart(ctxPie, configPie);
}
}
function updateLineChart() {
if (lineChart) {
lineChart.options = optionsLine;
lineChart.update();
}
}
function updateBarChart() {
if (barChart) {
barChart.options = optionsBar;
barChart.update();
}
}