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}
{b} : {c} ({d}%)" }, legend: { orient: 'vertical', left: 'left', textStyle: { color: contentColor }, data: ['直接访问', '邮件营销', '联盟广告', '视频广告', '搜索引擎'] }, series: [{ name: '访问来源', type: 'pie', radius: '55%', center: ['50%', '60%'], data: [ { value: 335, name: '直接访问' }, { value: 310, name: '邮件营销' }, { value: 234, name: '联盟广告' }, { value: 135, name: '视频广告' }, { value: 1548, name: '搜索引擎' } ], 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(); } }); } });