使用Echarts画甘特图
75 2023-03-11Echarts是一个非常强大的图表库, 下面我们来使用它来画甘特图,
首先需要下载Echarts。
下载地址:http://echarts.baidu.com/download.html
实现代码
<xmp>
<div id="main" style="width: 600px;height:400px;"></div>
<script type="text/javascript">
// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '项目进度'
},
legend: {
data: ['项目进度']
},
xAxis: {
type: 'time'
},
yAxis: {
data: ['测试实际', '测试计划', '程序实际', '程序计划', 'UI实际', 'UI计划', '策划实际', '策划计划',]
},
tooltip: {
show: true,
trigger: 'axis',
formatter: function (params) {
var res = params[0].name + ""
var date0 = params[0].data;
var date1 = params[1].data;
date0 = date0.getFullYear() + "-" + (date0.getMonth() + 1) + "-" + date0.getDate();
date1 = date1.getFullYear() + "-" + (date1.getMonth() + 1) + "-" + date1.getDate();
res += params[0].seriesName + ":" + date0 + ""
res += params[1].seriesName + ":" + date1 + ""
return res;
}
},
grid: {
left: '20%',
right: '10%'
},
series: [
{
name: '开始时间',
type: 'bar',
stack: '总量',
barWidth: '60%',
itemStyle: {
normal: {
color: 'rgba(0,0,0,0)'
}
},
data: [
new Date("2016/03/28"),
new Date("2016/04/01"),
new Date("2016/03/21"),
new Date("2016/03/01"),
new Date("2016/02/15"),
new Date("2016/02/01"),
new Date("2016/01/09"),
new Date("2016/01/01"),
]
}, {
name: '结束时间',
type: 'bar',
stack: '总量',
barWidth: '60%',
itemStyle: {
normal: {
color: function (params) {
var colorList = [
'#9e9e9e', '#259d24', '#9e9e9e', '#259d24', '#9e9e9e', '#259d24', '#9e9e9e', '#259d24'
];
//设置对应颜色
return colorList[params.dataIndex]
},
barBorderRadius: 0,
shadowColor: 'rgba(0, 0, 0, 0)',
shadowBlur: 0 //图形阴影的模糊大小。
}
},
data: [
new Date("2016/6/20"),
new Date("2016/5/30"),
new Date("2016/6/12"),
new Date("2016/5/30"),
new Date("2016/4/25"),
new Date("2016/3/30"),
new Date("2016/3/29"),
new Date("2016/3/30")
]
}
]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
</script>
</xmp>

-
使用Axios+PHP+JWT实现登录认证
JWT(JSON Web Token),顾名思义就是可以在Web上传输的token,这种token是用JSON格式进行format的。它是一个开源标准(RFC7519),定义了一个紧凑的自包含的方式在不同实体之间安全的用JSON格式传输信息。
-
Composer实现自动加载
Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。 你正在创建一个项目,你需要一个库来加载各种插件, 你所需要做的就是创建一个 composer.json 文件
-
分享计算机硬核书单
分享4本计算机内功心法,想在编程行业更进一步,这4本必须吃透: 《计算机组成原理》 《操作系统》 《计算机网络》 《数据结构与算法》
-
Mysql表锁和PHP文件锁的应用
锁一般是在高并发,多人同时操作同一个表的时候使用,例如下订单。由于表锁,会影响其他用户使用,所以建议使用文件锁。
-
完整ASCII码表
ASCII (American Standard Code for Information Interchange):美国信息交换标准代码是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,并等同于国际标准 ISO/IEC 646。
-
Nginx日志按天分割
nginx日志默认是不分割的,时间一长,日志文件就会很庞大。今天就来通过脚本实现按天切割,废话不多说,直接上代码:
-
Nginx 配置https
SSL 证书是一种数字证书,它使用 Secure Socket Layer 协议在浏览器和 Web 服务器之间建立一条安全通道,从而实现: 1、数据信息在客户端和服务器之间的加密传输,保证双方传递信息的安全性,不可被第三方窃听; 2、用户可以通过服务器证书验证他所访问的网站是否真实可靠。
-
Linux服务器Rsync结合inotify同步文件
服务器A:192.168.161.150 (分布服务器)(rsync客户端+inotify) 服务器B:192.168.161.151 (WEB服务器1)(rsync服务端) 服务器C:192.168.161.152 (WEB服务器2)(rsync服务端) 说明:服务器A有文件更新,自动同步到服务器B和C
-
OAuth 2.0授权认证
OAuth 2.0一个关于授权的开放的网络协议。用户同意授权给第三方使用系统数据,系统分发一个临时令牌(Token),第三方可通过令牌获取相关数据。
-
frp内网穿透,ngnix反向代理
设计思路: 1、域名frp.xxx.com解析到公网IP(112.112.112.112示例IP); 2、公网搭建nginx添加frp.xxx.com反向代理到公网服务器的8080端口; 3、frp服务端配置http监听端口为8080 4、内网的frp客户端负责转发内网服务器的WEB端口到frp服务器的8080端口同时制定只监听frp.xxx.com这个域名。 实现: 一、安装