提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:杨鹏连|2020-08-07 10:56:08.090|阅读 605 次
概述:本文介绍了如何创建基本的时间线图以及配置特定于该类型的设置。
#慧都22周年庆大促·界面/图表报表/文档/IDE/IOT/测试等千款热门软控件火热促销中>>
AnyGantt是基于JavaScript的高级解决方案,用于构建复杂且信息丰富的甘特图。它完全跨浏览器和跨平台,可用于ASP.NET、ASP、PHP、JSP、ColdFusion、Ruby on Rails或简单的HTML页面。
总览
时间线图是按时间顺序可视化的事件。它既显示占用时间段的事件(范围),又显示持续时间为零的事件(瞬间)。事件和日期显示在长条形图(轴)上。
一个甘特图是项目管理使用时间表的一种特殊形式。
本文介绍了如何创建基本的时间线图以及配置特定于该类型的设置。您还可以查看下表以简要了解时间轴图表的特征:
时间线图需要添加核心和时间线图模块:
<script src="//cdn.anychart.com/releases/8.7.1/js/anychart-core.min.js"></script>
<script src="//cdn.anychart.com/releases/8.7.1/js/anychart-timeline.min.js"></script>
要创建时间线图表,请使用anychart.timeline()图表构造函数。
然后调用range()和moment()方法来创建范围序列和矩序列。
下面的示例演示如何创建基本的时间线图表:
// create data
var rangeData1 = [
["Task 1", Date.UTC(2004,0,4), Date.UTC(2004,7,1)],
["Task 2", Date.UTC(2004,7,1), Date.UTC(2005,8,10)]
];
var rangeData2 = [
["New Task 1", Date.UTC(2005,10,1), Date.UTC(2006,5,1)],
["New Task 2", Date.UTC(2006,5,15), Date.UTC(2006,11,1)]
];
var momentData1 = [
[Date.UTC(2004,2,21), "Meeting 1"],
[Date.UTC(2005,3,19), "Meeting 2"],
[Date.UTC(2006,1,1), "Meeting 3"]
];
var momentData2 = [
[Date.UTC(2004,5,12), "Training 1"],
[Date.UTC(2005,5,1), "Training 2"],
[Date.UTC(2006,1,26), "Training 3"]
];
// create a chart
var chart = anychart.timeline();
// create the first range series
var rangeSeries1 = chart.range(rangeData1);
// create the second range series
var rangeSeries2 = chart.range(rangeData2);
// create the first moment series
var momentSeries1 = chart.moment(momentData1);
// create the second moment series
var momentSeries2 = chart.moment(momentData2);
// set the container id
chart.container("container");
// initiate drawing the chart
chart.draw();

常规设置
在AnyChart中,为所有图表类型(包括时间线图表)以相同的方式配置了许多设置(例如,图例和交互设置)。特殊设定
数据// create data
var rangeData1 = [
{name: "Task 1", start: Date.UTC(2004,0,4), end: Date.UTC(2004,11,1)},
{name: "Task 2", start: Date.UTC(2004,7,1), end: Date.UTC(2005,8,10)}
];
var rangeData2 = [
{name: "New Task 1", start: Date.UTC(2005,10,1), end: Date.UTC(2006,5,1)},
{name: "New Task 2", start: Date.UTC(2006,5,15), end: Date.UTC(2006,11,1)}
];
var momentData1 = [
{x: Date.UTC(2004,2,21), y: "Meeting 1"},
{x: Date.UTC(2005,3,19), y: "Meeting 2"},
{x: Date.UTC(2006,1,1), y: "Meeting 3"}
];
var momentData2 = [
{x: Date.UTC(2004,5,12), y: "Training 1"},
{x: Date.UTC(2005,5,1), y: "Training 2"},
{x: Date.UTC(2006,1,26), y: "Training 3"}
];
// create a chart
var chart = anychart.timeline();
// create the first range series
var rangeSeries1 = chart.range(rangeData1);
// create the second range series
var rangeSeries2 = chart.range(rangeData2);
// create the first moment series
var momentSeries1 = chart.moment(momentData1);
// create the second moment series
var momentSeries2 = chart.moment(momentData2);
范围系列
范围系列用于显示具有持续时间的事件。// create the first range series
var rangeSeries1 = chart.range(rangeData1);
// configure the first range series
rangeSeries1.height(40);
rangeSeries1.direction("down");
rangeSeries1.normal().fill("#ff6600");
rangeSeries1.hovered().fill("#ff6600", 0.5);
rangeSeries1.selected().fill("#004e72", 0.5);
rangeSeries1.normal().stroke("#004e72");
rangeSeries1.hovered().stroke("#004e72", 2);
rangeSeries1.selected().stroke("#004e72", 2);
// create the second range series
var rangeSeries2 = chart.range(rangeData2);
// configure the second range series
rangeSeries2.direction("down");
rangeSeries2.normal().fill("#00a8e0");
rangeSeries2.hovered().fill("#00a8e0", 0.5);
rangeSeries2.selected().fill("#004e72", 0.5);
rangeSeries2.normal().stroke("#004e72");
rangeSeries2.hovered().stroke("#004e72", 2);
rangeSeries2.selected().stroke("#004e72", 2);
个别范围// create data
var rangeData1 = [
{name: "Task 1", start: Date.UTC(2004,0,4), end: Date.UTC(2004,7,1),
normal: {fill: "#01b53f", stroke: "null"},
hovered: {fill: "#01b53f", stroke: "null"},
selected: {fill: "#01b53f", stroke: "null"}
},
{name: "Task 2", start: Date.UTC(2004,7,1), end: Date.UTC(2005,8,10),
normal: {fill: "#ff6600", stroke: "null"},
hovered: {fill: "#ff6600", stroke: "null"},
selected: {fill: "#ff6600", stroke: "null"}
}
];
var rangeData2 = [
{name: "New Task 1", start: Date.UTC(2005,10,1), end: Date.UTC(2006,5,1),
normal: {fill: "#00a8e0", stroke: "null"},
hovered: {fill: "#00a8e0", stroke: "null"},
selected: {fill: "#00a8e0", stroke: "null"}
},
{name: "New Task 2", start: Date.UTC(2006,5,15), end: Date.UTC(2006,11,1),
normal: {fill: "#f6bc16", stroke: "null"},
hovered: {fill: "#f6bc16", stroke: "null"},
selected: {fill: "#f6bc16", stroke: "null"}
}
];
// create a chart
var chart = anychart.timeline();
// create the first range series
var rangeSeries1 = chart.range(rangeData1);
// create the second range series
var rangeSeries2 = chart.range(rangeData2);

本教程未完待续,感兴趣的朋友可以下载AnyGantt试用版免费体验哦~更多产品信息请咨询
EV-APS是慧都科技15年行业经验以及技术沉淀之作,通过连接企业接单、采购、制造、仓储物流等整个供应链流程,帮助提升企业生产效率。
VARCHART XGantt是一个功能全面的交互式甘特图控件,其模块化的设计让您可以创建满足您和您的客户所需求的应用程序。(我们领先的甘特图控件VARCHART XGantt可用于.NET,ActiveX应用程序。)除此之外,同时还具有一个稳定可靠的甘特图工具,在编写第一行代码之前,您就可以知道是否可以满足客户的需求。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@hmdbvip.cn
文章转载自:



在现代软件开发过程中,自动化单元测试是确保代码质量与可靠性的关键环节。尤其对于特定框架(如MFC)的代码,测试复杂度显著增加,常因依赖外部资源或交互操作而难以在静默环境中顺利执行。Parasoft C/C++test作为专业的软件测试工具,致力于帮助开发团队高效实施自动化测试,通过其强大的桩函数功能,能够有效模拟依赖组件的行为,从而实现对复杂逻辑的隔离测试。
本文将为大家介绍如何在MyEclipse中使用XDoclet开发EJB 2 Session Bean,欢迎下载最新版体验!
如果能将 CSV 自动转换为 PDF ,就能快速生成清晰、美观的报表,既节省手动排版时间,又能保持数据的专业呈现。本文将介绍如何使用 Spire.XLS for Java 实现这一过程——从加载 CSV 到输出高质量 PDF,仅需数行代码即可完成。
Parasoft C/C++test是一款专为C/C++代码设计的自动化测试工具,通过静态代码分析、单元测试和运行时错误检测等功能,帮助开发团队在早期发现并修复缺陷,提升代码质量和开发效率 。在实际使用中,尤其是在VC6此类旧版开发环境中执行单元测试时,可能会因环境兼容性问题触发链接错误。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@hmdbvip.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
永利最大(官方)网站