如何用echarts生成每日考勤工时成本分析图表

最近参与开发考勤管理系统,里面有各种统计分析图表,可以用的图表组件也选了很多,有highcharts, echarts, 因为学习成本和文档阅读便利性,所以最终选择了echart做为图表组件,记录一下学习,下面是图表效果
考勤工时成本统计分析图
要使用Echarts首先就要引入echarts文件

<script src="echarts.js"></script>

echarts.js文件可在echarts的官方中文网站下载

然后配置echarts图表选项

{
		baseOption: {
			timeline: {
				// y: 0,
				axisType: 'category',
				// realtime: false,
				// loop: false,
				autoPlay: false,
				// currentIndex: 2,
				playInterval: 1000,
				bottom: 10,
				// controlStyle: {
				//     position: 'left'
				// },
				data: [
					'2002年','2003年','2004年',
					{
						value: '2005年',
						tooltip: {
							formatter: '{b} 工时成本达到一个高度'
						},
						symbol: 'diamond',
						symbolSize: 16
					},
					'2006年', '2007年','2008年','2009年','2010年',
					{
						value: '2011年',
						tooltip: {
							formatter: function (params) {
								return params.name + '工时成本达到又一个高度';
							}
						},
						symbol: 'diamond',
						symbolSize: 18
					},
				],
				label: {
					formatter : function(s) {
						return (new Date(s)).getFullYear();
					}
				}
			},
			title: {
				subtext: '数据来自天时考勤系统www.daytime.cc'
			},
			tooltip: {
			},
			legend: {
				x: 'right',
				data: ['Q1季度', 'Q2季度', 'Q3季度', 'Q4季度', '加班工时'],
				selected: {
					'加班工时': false
				}
			},
			calculable : true,
			grid: {
				top: 90,
				bottom: 110,
				right: 20,
				left: 70,
				tooltip: {
					trigger: 'axis',
					axisPointer: {
						type: 'shadow',
						label: {
							show: true,
							formatter: function (params) {
								return params.value.replace('\n', '');
							}
						}
					}
				}
			},
			xAxis: [
				{
					'type':'category',
					'axisLabel':{'interval':0},
					'data':[
						'行政','\n人事','IT','\n研发','生产','\n后勤','商务','\n市场',
						'设计','\n业务A','业务B','\n总经办','测试','\n财务','车间','\n招商',
						'海外','\n管理','商品','\n直营','信息','\n企划','仓库','\n买手',
						'代理','\n渠道','采购','\n开发','储备','\n门店','电商'
					],
					splitLine: {show: false}
				}
			],
			yAxis: [
				{
					type: 'value',
					name: '工时(小时)'
				}
			],
			series: [
				{name: 'Q1季度', type: 'bar'},
				{name: 'Q2季度', type: 'bar'},
				{name: 'Q3季度', type: 'bar'},
				{name: 'Q4季度', type: 'bar'},
				{name: '加班工时', type: 'bar'},
				{
					name: '工时占比',
					type: 'pie',
					center: ['75%', '35%'],
					radius: '28%',
					z: 100
				}
			]
		},
		options: [
			{
				title: {text: '2002工时成本分析'},
				series: [
					{data: dataMap.dataGDP['2002']},
					{data: dataMap.dataFinancial['2002']},
					{data: dataMap.dataEstate['2002']},
					{data: dataMap.dataPI['2002']},
					{data: dataMap.dataSI['2002']},
					{data: [
						{name: 'Q1季度', value: dataMap.dataPI['2002sum']},
						{name: 'Q2季度', value: dataMap.dataSI['2002sum']},
						{name: 'Q3季度', value: dataMap.dataTI['2002sum']},
						{name: 'Q4季度', value: dataMap.dataTI['2002sum']}
					]}
				]
			},
			{
				title : {text: '2003工时成本分析'},
				series : [
					{data: dataMap.dataGDP['2003']},
					{data: dataMap.dataFinancial['2003']},
					{data: dataMap.dataEstate['2003']},
					{data: dataMap.dataPI['2003']},
					{data: dataMap.dataSI['2003']},
					{data: [
						{name: 'Q1季度', value: dataMap.dataPI['2003sum']},
						{name: 'Q2季度', value: dataMap.dataSI['2003sum']},
						{name: 'Q3季度', value: dataMap.dataTI['2003sum']},
						{name: 'Q4季度', value: dataMap.dataTI['2003sum']}
					]}
				]
			},
			{
				title : {text: '2004工时成本分析'},
				series : [
					{data: dataMap.dataGDP['2004']},
					{data: dataMap.dataFinancial['2004']},
					{data: dataMap.dataEstate['2004']},
					{data: dataMap.dataPI['2004']},
					{data: dataMap.dataSI['2004']},
					{data: [
						{name: 'Q1季度', value: dataMap.dataPI['2004sum']},
						{name: 'Q2季度', value: dataMap.dataSI['2004sum']},
						{name: 'Q3季度', value: dataMap.dataTI['2004sum']},
						{name: 'Q4季度', value: dataMap.dataTI['2004sum']}
					]}
				]
			},
			{
				title : {text: '2005工时成本分析'},
				series : [
					{data: dataMap.dataGDP['2005']},
					{data: dataMap.dataFinancial['2005']},
					{data: dataMap.dataEstate['2005']},
					{data: dataMap.dataPI['2005']},
					{data: dataMap.dataSI['2005']},
					{data: [
						{name: 'Q1季度', value: dataMap.dataPI['2005sum']},
						{name: 'Q2季度', value: dataMap.dataSI['2005sum']},
						{name: 'Q3季度', value: dataMap.dataTI['2005sum']},
						{name: 'Q4季度', value: dataMap.dataTI['2005sum']}
					]}
				]
			},
			{
				title : {text: '2006工时成本分析'},
				series : [
					{data: dataMap.dataGDP['2006']},
					{data: dataMap.dataFinancial['2006']},
					{data: dataMap.dataEstate['2006']},
					{data: dataMap.dataPI['2006']},
					{data: dataMap.dataSI['2006']},
					{data: [
						{name: 'Q1季度', value: dataMap.dataPI['2006sum']},
						{name: 'Q2季度', value: dataMap.dataSI['2006sum']},
						{name: 'Q3季度', value: dataMap.dataTI['2006sum']},
						{name: 'Q4季度', value: dataMap.dataTI['2006sum']}
					]}
				]
			},
			{
				title : {text: '2007工时成本分析'},
				series : [
					{data: dataMap.dataGDP['2007']},
					{data: dataMap.dataFinancial['2007']},
					{data: dataMap.dataEstate['2007']},
					{data: dataMap.dataPI['2007']},
					{data: dataMap.dataSI['2007']},
					{data: [
						{name: 'Q1季度', value: dataMap.dataPI['2007sum']},
						{name: 'Q2季度', value: dataMap.dataSI['2007sum']},
						{name: 'Q3季度', value: dataMap.dataTI['2007sum']},
						{name: 'Q4季度', value: dataMap.dataTI['2007sum']}
					]}
				]
			},
			{
				title : {text: '2008工时成本分析'},
				series : [
					{data: dataMap.dataGDP['2008']},
					{data: dataMap.dataFinancial['2008']},
					{data: dataMap.dataEstate['2008']},
					{data: dataMap.dataPI['2008']},
					{data: dataMap.dataSI['2008']},
					{data: [
						{name: 'Q1季度', value: dataMap.dataPI['2008sum']},
						{name: 'Q2季度', value: dataMap.dataSI['2008sum']},
						{name: 'Q3季度', value: dataMap.dataTI['2008sum']},
						{name: 'Q4季度', value: dataMap.dataTI['2008sum']}
					]}
				]
			},
			{
				title : {text: '2009工时成本分析'},
				series : [
					{data: dataMap.dataGDP['2009']},
					{data: dataMap.dataFinancial['2009']},
					{data: dataMap.dataEstate['2009']},
					{data: dataMap.dataPI['2009']},
					{data: dataMap.dataSI['2009']},
					{data: [
						{name: 'Q1季度', value: dataMap.dataPI['2009sum']},
						{name: 'Q2季度', value: dataMap.dataSI['2009sum']},
						{name: 'Q3季度', value: dataMap.dataTI['2009sum']},
						{name: 'Q4季度', value: dataMap.dataTI['2009sum']}
					]}
				]
			},
			{
				title : {text: '2010工时成本分析'},
				series : [
					{data: dataMap.dataGDP['2010']},
					{data: dataMap.dataFinancial['2010']},
					{data: dataMap.dataEstate['2010']},
					{data: dataMap.dataPI['2010']},
					{data: dataMap.dataSI['2010']},
					{data: [
						{name: 'Q1季度', value: dataMap.dataPI['2010sum']},
						{name: 'Q2季度', value: dataMap.dataSI['2010sum']},
						{name: 'Q3季度', value: dataMap.dataTI['2010sum']},
						{name: 'Q4季度', value: dataMap.dataTI['2010sum']}
					]}
				]
			},
			{
				title : {text: '2011工时成本分析'},
				series : [
					{data: dataMap.dataGDP['2011']},
					{data: dataMap.dataFinancial['2011']},
					{data: dataMap.dataEstate['2011']},
					{data: dataMap.dataPI['2011']},
					{data: dataMap.dataSI['2011']},
					{data: [
						{name: 'Q1季度', value: dataMap.dataPI['2011sum']},
						{name: 'Q2季度', value: dataMap.dataSI['2011sum']},
						{name: 'Q3季度', value: dataMap.dataTI['2011sum']},
						{name: 'Q4季度', value: dataMap.dataTI['2011sum']}
					]}
				]
			}
		]
	}

接着我们把刚才的选项代码给复制过来并赋值给option对象
myChart.setOption(option);
最后图表就生成了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
若按照框架如何添加Echarts数据分析考勤分析模块、实体图以及测试用例? 在进行Echarts数据分析的开发中,我们可以选择使用Vue.js框架来构建前端页面。首先,需要引入Echarts的相关库文件。可以通过npm安装echarts包,然后在项目中引入echarts的js文件。接着,可以创建一个Vue组件,用于展示Echarts图表。在组件中,可以设置图表的样式、数据,通过Echarts提供的API进行配置。最后,将该组件引入到需要展示数据分析的页面中即可。 对于考勤分析模块,在设计数据结构时,可以考虑使用数据库来存储考勤相关的信息。可以建立员工表、打卡记录表等表格,记录每个员工的考勤情况。在前端页面中,可以通过Vue.js框架来实现与后端的数据交互。通过请求API接口获取考勤数据,然后使用Vue组件展示相应的考勤分析图表或表格。 实体图可以使用UML工具来绘制,例如使用Visio、StarUML等工具。在绘制实体图时,需要确定系统中的实体、属性和关系,然后按照UML标准进行绘制。实体图可以作为系统设计的参考,帮助团队成员理解系统的结构和功能。 测试用例是为了验证系统的功能是否正常运行,可以使用测试用例管理工具,例如TestRail、Xray等工具来编写和管理测试用例。在编写测试用例时,需要明确每个功能点的测试目标和预期结果,然后进行测试的输入和操作步骤的编写。针对不同的测试场景,编写不同的测试用例,以确保系统的可靠性和稳定性。 综上所述,按照框架添加Echarts数据分析考勤分析模块、实体图和测试用例,可以通过Vue.js框架来构建前端页面展示Echarts图表,通过数据库记录考勤数据并通过API接口进行数据交互,使用UML工具绘制实体图,通过测试用例管理工具编写和管理测试用例。这样可以有效地实现数据分析考勤分析、系统设计和功能验证的目标。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值