基于JQ的一款灵活高效,支持自定义拓展的甘特图/日程图插件

支持月/周/小时等显示方式 支持拖动改变时间 展开与收起 添加/删除,刷新 节假日高亮 clicked,dblClicked,changed事件 ...

调用方式:

$("#ganttChart").ganttView({

ganttScale: "hours",// months weeks days hours

showWeekends: true, //是否现在周末高亮

showLine: true,//是否显示 当前时间线(为"周"时显示背景颜色)

data: ganttData2, //数据来源

vtHeaderWidth: 300,//左侧任务模块宽度

cellWidth: 50, //格子宽度(ganttScale = hours/weeks:宽度重新计算 最小为50)

cellHeight: 40,//格子行高

titileHeight: 40,//标题行高

start: new Date(2019, 06, 14), //范围最小时间(请根据 ganttScale 参数调节初始时间范围)

end: new Date(2019, 06, 20), //范围最大时间

slideWidth: '100%',//甘特图宽度

excludeWeekends: true,//排除星期的最后一天

showDayOfWeek: true,//是否显示星期

showHolidays: false,//显示节假日

excludeHolidays: false,//排除节假日

gridHoverL:true,//是否显示鼠标移入效果(列)

gridHoverH:true,//是否显示鼠标移入效果(行)

isUnfold:true,//模块下任务超过2条 显示展开收起按钮

unfoldConfig:false,//初始化展开/收起(模块下任务超过2条 显示展开收起按钮) true:收起

clicked: function (o) {

selectedObj = o;

var data = selectedObj.data('block-data');

var itemName = data.itemName ? data.itemName : "";

var seriesName = data.seriesName ? data.seriesName : "";

var text = data.text ? data.text : "";

var sYYYY = data.start.getYear();

sYYYY = sYYYY < 1000 ? sYYYY + 1900 : sYYYY;

var sMM = data.start.getMonth() + 1;

var sDD = data.start.getDate();

var eYYYY = data.end.getYear();

eYYYY = eYYYY < 1000 ? eYYYY + 1900 : eYYYY;

var eMM = data.end.getMonth() + 1;

var eDD = data.end.getDate();

$('#ganttData-item-id').val(data.itemId);

$('#ganttData-item-name').val(itemName);

$('#ganttData-series-id').val(data.seriesId);

$('#ganttData-series-name').val(seriesName);

$('#ganttData-series-start').val(sYYYY + "/" + sMM + "/" + sDD);

$('#ganttData-series-end').val(eYYYY + "/" + eMM + "/" + eDD);

$('#ganttData-series-text').val(text);

console.log(`${data.itemId} ${itemName} ${data.seriesId} ${seriesName} ${sYYYY + "/" + sMM + "/" + sDD} ${eYYYY + "/" + eMM + "/" + eDD}`)

},

dblClicked: function (o) {

if (selectedObj == null) { return; }

if (selectedObj.data('block-data').seriesId == o.data('block-data').seriesId) {

$('#ganttData-reset').trigger("click");

}

},

changed: function (o) {

o.trigger("click");

}

});

注意事项:

支持月,周,小时

选择月时,注意调整start/end时间(时间月份默认从0开始)

选择周/小时,插件自动忽略年份与月份

插件支持模块下任务超过2条数据自动显示展开/收起按钮

插件支持节假日Holidays表格高亮,excludeHolidays:true

cellWidth表格宽度(ganttScale = hours/weeks:宽度重新计算 最小为50) 避免未撑满整个屏幕

showLine是否显示当前时间节点(小时为线条展示,周/月为表格高亮)

关于版本问题(jquery-ui-1.8.2/jquery-1.4.2)JQ版本可为高版本,JQ-ui版本暂不支持高版本

图表上所有样式可自定义或取消

python动态横道图_jQuery甘特图/日程图/横道图/插件相关推荐

  1. python动态横道图_Python数据可视化:甘特图画法

    大家好,我是一名Python数据分析师,我想把自己转行成功之路上的经验分享给大家,由此就有了我的人工智能四部曲:<15天学会Python编程>.<每天10分钟,用Python学数据分 ...

  2. python动态横道图_python的matplotlib.pyplot绘制甘特图

    博主本来就想简单地找一下代码,画一幅甘特图,结果百度之后发现甘特图的代码基本都不是用matplotlib库,但是像柱状图等统计图通常都是用这个库进行绘制的,所以博主就花了一些时间,自己敲了一份代码,简 ...

  3. python动态横道图_详细解说Python使用Plotly绘图工具,绘制甘特图

    今天来讲一下如何使用Python 的绘图工具Plotly来绘制甘特图的方法 甘特图大家应该了解熟悉,就是通过条形来显示项目的进度.时间安排等相关情况的. 我们今天来学习一下,如何使用ployly来绘制 ...

  4. 2021-07-14 PMP 横道图、网络图、看板、燃尽图了解

    横道图(甘特图) 甘特图是以图示的方式,并通过活动列表和时间刻度,来形象地表示出某些特定项目的活动顺序和持续时间 网络图 项目进度活动之间的逻辑关系 看板 https://www.cnblogs.co ...

  5. Python动态图见得多了?Excel:亦可赛艇!我可是身经百战了

    作者:Ryoko量子 来源:凹凸数据 朋友圈又看到 Python 广告推送了,什么"你还在用 Excel 加班啊"."我一进去就看见 Python 在打 Excel 啊& ...

  6. excel自动排班表_中建最新版施工计划进度横道图,一键自动生成,横道图从此不用愁...

    中建最新版施工计划进度横道图,一键自动生成,横道图从此不用愁 横道图,是一种非常实用的图表类型.施工进度计划的制定在工程项目里是很重要的,这可以大大提高施工单位的管理水平,是项目施工必备.作为一个在工 ...

  7. python动态图的绘制和保存

    前言 这段时间要做一个涉及排队论的数学建模,需要动态绘图.建好了模,却没想到在原以为简单的绘图上耗费了我大量时间.原因在于用python作动态绘图的参考资料过于琐碎.因此在我费了九牛二虎之力终于实现动 ...

  8. python绘制动态模拟图-如何利用Python动态模拟太阳系运转

    前言 提到太阳系,大家可能会想到哥白尼和他的日心说,或是捍卫.发展日心说的斗士布鲁诺,他们像一缕光一样照亮了那个时代的夜空,对历史感兴趣的小伙伴可以深入了解一下,这里就不多说了. 太阳以巨大的引力使周 ...

  9. 项目进度计划甘特图_甘特图做项目进度计划的技巧?

    原标题:甘特图做项目进度计划的技巧? 甘特图怎么做项目进度计划?首先我们先了解一下,什么是甘特图. 甘特图(Gantt chart)又称为横道图.条状图(Bar chart),是由提出者亨利·L·甘特 ...

最新文章

  1. Dickey-Fuller检验+迪基-福勒检验
  2. 用虚拟机学linux,虚拟机上学习Linux运维?学linux有什么用
  3. NeurIPS 2021放榜,接收率创九年新高,你的paper中了吗?
  4. Windows文件系统过滤驱动开发教程(0,1,2)
  5. Javascript 或运算的判断小问题
  6. 一个项目经理的一些个人体会
  7. Apache-DBUtils实现CRUD操作,已封装的API实现jdbc对数据库进行操作
  8. android webview网页显示不完整,【报Bug】webview页面内容显示不全
  9. springboot项目打war包流程
  10. mysql 查询最顶级_2018顶级MySQL博客作者
  11. 从未在一起更让人遗憾_我们从未在一起更遗憾
  12. ubuntu20关闭自动更新
  13. 江苏咪咕MGV3000_YST代工_S905L3_线刷固件包
  14. gradle尚硅谷笔记
  15. python学习之路遇到的问题以及解决方法
  16. 如何通过域名访问服务器文件,如何通过域名访问云服务器
  17. 雷军语录:感谢“批评”让小米理性成长
  18. paper fast review :Deep Residual Shrinkage....
  19. 谭浩强c语言五位数的输入输出问题
  20. mysql 存储年月_mysql 存储年月

热门文章

  1. Codeforces Round #784 (Div. 4)(A~F)
  2. 大学计算机专业有哪些?该选择哪个专业呢?
  3. 搭建 Vue + Vite 入门项目
  4. Java虚拟机常用的性能监控工具
  5. 如何选择正确值的上拉电阻和下拉电阻?
  6. oracle默认用户的密码,Oracle的默认用户密码
  7. python基于rsa的数字签名实现_OpenSSL和Python实现RSA Key数字签名和验证
  8. LeetCode(Python实现)—寻找两个有序数组的中位数
  9. Netty框架之概述及基本组件介绍
  10. 从元宇宙角度看社交出海产品新体验