echarts2实现双柱的甘特图_echarts绘制甘特图

本文介绍如何利用Echarts2实现双柱状的甘特图,包括自动适应窗口大小、处理数据和设置图表配置。通过调整x轴的splitNumber和max属性来处理上下两组数据的分栏线重合问题,并提供了处理日期的辅助函数。
摘要由CSDN通过智能技术生成

在setoption之后添加这段代码:window.addEventListener('resize', function () {

myChart.resize();

});

图表就能随着窗口大小,自动适应,且支持一页多图。

效果图:

html代码:

特别注意点:

xAxis : [

{

type : 'value',

splitNumber: legend.length-1,

max: legend.length-1,...

此处的splitNumber 和 max决定了x轴的分栏线是否重合(因为有上下两组数据,可能会出现分栏线不一致情况)

报表
 
 

图例:计划时长 已完成阶段的实际时长 未完成阶段的实际时长

require.config({

paths: {

echarts: 'dist'

}

});

function dateAfter(dateStr,num){

var date1 = new Date(Date.parse(dateStr.replace(/-/g,   "/")));

//alert(date1.getFullYear()+"-"+(date1.getMonth()+1)+"-"+date1.getDate());

var date2 = new Date(date1);

date2.setDate(date1.getDate()+num);

var times = date2.getFullYear()+"-"+(date2.getMonth()+1)+"-"+date2.getDate();

return times;

}

function GetDateDiff(startDate,endDate){

var startTime = new Date(Date.parse(startDate.replace(/-/g,   "/"))).getTime();

var endTime = new Date(Date.parse(endDate.replace(/-/g,   "/"))).getTime();

var dates = (startTime - endTime)/(1000*60*60*24);

return  dates;

}

//var url = "${path}/notice/groupFirstCheckNotice!initGantt.action?projectId=${resultjson.projectId}";

var totalCategory = 0,category=[],planData=[],planBase=[],actualData=[],actualBase=[],legend=[];

var globalmin = null;

var json = {

"currStageIndexList": [

8,

9

],

"currStageList": [

"初步验收",

"试运行"

],

"stageList": [

{

"planBeginDate": "2016-08-31",

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值