ChengDa_English/SGGL/FineUIPro.Web/res/js/dashboard_chart.js

317 lines
8.7 KiB
JavaScript

function emptyContentColor() {
return $('#emptycontent').css('color');
}
function randomColors() {
var colors = ['#c23531', '#2f4554', '#61a0a8', '#d48265', '#91c7ae', '#749f83', '#ca8622', '#bda29a', '#6e7074', '#546570', '#c4ccd3'];
var randomIndex = Math.random() * colors.length;
return $.merge(colors.slice(randomIndex), colors.slice(0, randomIndex));
}
function initChart1() {
var chart = echarts.init($('.mycard .chart1')[0]);
var option = {
color: randomColors(),
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
grid: {
left: 0,
right: 0
},
xAxis: {
show: false,
type: 'category',
data: ['02/01', '02/02', '02/03', '02/04', '02/05', '02/06', '02/07', '02/08', '02/09', '02/10', '02/11', '02/12']
},
yAxis: {
show: false,
type: 'value',
max: function (value) {
return value.max + 100;
}
},
series: [{
name: 'Page View',
type: 'bar',
data: [800, 1000, 600, 1200, 600, 500, 800, 500, 1500, 1000, 900, 600]
}]
};
chart.setOption(option);
return chart;
}
function initChart2() {
var chart = echarts.init($('.mycard .chart2')[0]);
var option = {
color: randomColors(),
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
grid: {
left: 0,
right: 0
},
xAxis: {
show: false,
type: 'category',
data: ['02/01', '02/02', '02/03', '02/04', '02/05', '02/06', '02/07', '02/08', '02/09', '02/10', '02/11', '02/12']
},
yAxis: {
show: false,
type: 'value',
max: function (value) {
return value.max + 200;
}
},
series: [{
name: 'Dedicated IP',
type: 'line',
smooth: true,
areaStyle: {},
data: [800, 1000, 600, 1200, 600, 500, 800, 500, 1500, 1000, 900, 600]
}]
};
chart.setOption(option);
return chart;
}
function initChart3() {
var chart = echarts.init($('.mycard .chart3')[0]);
var option = {
color: randomColors(),
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
grid: {
left: 0,
right: 0
},
xAxis: {
show: false,
type: 'category',
data: ['02/01', '02/02', '02/03', '02/04', '02/05', '02/06', '02/07', '02/08', '02/09', '02/10', '02/11', '02/12']
},
yAxis: {
show: false,
type: 'value',
max: function (value) {
return value.max + 200;
}
},
series: [{
name: 'User Amount',
type: 'bar',
data: [400, 500, 300, 900, 300, 600, 600, 300, 800, 1200, 200, 300]
}, {
name: 'Page View',
type: 'line',
smooth: true,
data: [800, 1000, 600, 1200, 600, 500, 800, 500, 1500, 1000, 900, 600]
}]
};
chart.setOption(option);
return chart;
}
//function initTabStripChart1() {
// var chart = echarts.init($('.tabstrip-chart.chart1')[0]);
// var contentColor = emptyContentColor();
// var option = {
// title: {
// text: 'Week Page View',
// padding: [20, 20, 0, 20],
// textStyle: {
// fontSize: 12,
// fontWeight: 'normal',
// color: contentColor
// }
// },
// color: randomColors(),
// tooltip: {
// trigger: 'axis',
// axisPointer: {
// type: 'shadow'
// }
// },
// xAxis: {
// type: 'category',
// boundaryGap: false,
// axisLine: {
// lineStyle: {
// color: contentColor
// }
// },
// data: ['02/01', '02/02', '02/03', '02/04', '02/05', '02/06', '02/07', '02/08', '02/09', '02/10', '02/11', '02/12']
// },
// yAxis: {
// type: 'value',
// axisLine: {
// lineStyle: {
// color: contentColor
// }
// }
// },
// series: [{
// name: 'Page View',
// type: 'line',
// smooth: true,
// areaStyle: {},
// data: [800, 1000, 600, 1200, 600, 500, 800, 500, 1500, 1000, 900, 600]
// }]
// };
// chart.setOption(option);
// return chart;
//}
//function initTabStripChart2() {
// var chart = echarts.init($('.tabstrip-chart.chart2')[0]);
// var contentColor = emptyContentColor();
// var option = {
// title: {
// text: 'Week User Amount',
// padding: [20, 20, 0, 20],
// textStyle: {
// fontSize: 12,
// fontWeight: 'normal',
// color: contentColor
// }
// },
// color: randomColors(),
// tooltip: {
// trigger: 'axis',
// axisPointer: {
// type: 'shadow'
// }
// },
// xAxis: {
// type: 'category',
// axisLine: {
// lineStyle: {
// color: contentColor
// }
// },
// data: ['02/01', '02/02', '02/03', '02/04', '02/05', '02/06', '02/07', '02/08', '02/09', '02/10', '02/11', '02/12']
// },
// yAxis: {
// type: 'value',
// axisLine: {
// lineStyle: {
// color: contentColor
// }
// }
// },
// series: [{
// name: 'User Amount',
// type: 'bar',
// data: [400, 500, 300, 900, 300, 600, 600, 300, 800, 1200, 200, 300]
// }, {
// name: 'Page View',
// type: 'line',
// smooth: true,
// data: [800, 1000, 600, 1200, 600, 500, 800, 500, 1500, 1000, 900, 600]
// }]
// };
// chart.setOption(option);
// return chart;
//}
function initChartPie() {
var chart = echarts.init($('.mychart-pie')[0]);
var contentColor = emptyContentColor();
var option = {
color: randomColors(),
title: {
text: '施工现场',
subtext: '这是说明文字',
x: 'center',
textStyle: {
color: contentColor
}
},
tooltip: {
trigger: 'item',
formatter: "{a} <br/>{b} : {c} ({d}%)"
},
legend: {
orient: 'vertical',
left: 'left',
textStyle: {
color: contentColor
},
data: ['施工1', '施工2', '施工3', '施工4', '施工5']
},
series: [{
name: '人数',
type: 'pie',
radius: '55%',
center: ['50%', '60%'],
data: [
{ value: 335, name: '施工1' },
{ value: 310, name: '施工2' },
{ value: 234, name: '施工3' },
{ value: 135, name: '施工4' },
{ value: 1548, name: '施工5'}
],
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}]
};
chart.setOption(option);
return chart;
}
F.ready(function () {
if (F._base) {
return;
}
var chart1 = initChart1();
var chart2 = initChart2();
var chart3 = initChart3();
//var tabstripChart1 = initTabStripChart1();
//var tabstripChart2 = initTabStripChart2();
var chartPiew = initChartPie();
F.windowResize(function () {
chart1.resize();
chart2.resize();
chart3.resize();
//tabstripChart1.resize();
//tabstripChart2.resize();
chartPiew.resize();
});
var mytabstrip = $('.mytabstrip');
if (mytabstrip.length) {
F(mytabstrip).on('tabchange', function (event, tab) {
var chartDom = tab.el.find('.tabstrip-chart')[0];
var chartInstance = echarts.getInstanceByDom(chartDom);
// 如果图表宽度为零,说明是在隐藏状态下初始化的,需要重置大小
if (!chartInstance.getWidth()) {
chartInstance.resize();
}
});
}
});