Toggle navigation
Toggle navigation
This project
Loading...
Sign in
2019-2-OpenSourceSW
/
Probability Death
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
조민지
2018-12-12 14:18:57 +0900
Browse Files
Options
Browse Files
Download
Plain Diff
Commit
7433c87be42f5b2d1d66e2fee395f4f30f6916e8
7433c87b
2 parents
f7683df1
3c719ed4
Merge branch 'front_socket' into developing
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
429 additions
and
428 deletions
views/index.ejs
views/index.ejs
View file @
7433c87
<!DOCTYPE html>
<html>
<head>
<meta
http-equiv=
"Content-Type"
content=
"text/html; charset=utf-8"
/>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1"
/>
<title>
Highcharts Example
</title>
<style
type=
"text/css"
></style>
</head>
<body>
<script
src=
"highcharts.js"
></script>
<script
src=
"modules/exporting.js"
></script>
<script
src=
"modules/export-data.js"
></script>
<div
id=
"container1"
style=
"width:1260px; height: 400px; margin: 0 auto"
></div>
<div
style=
"width:1275px; margin:0 auto;"
>
<div
style=
"display: inline-block;"
>
<div
id=
"container2"
style=
"width:400px; height: 300px; padding:0; margin-left:0px;margin-right: 30px;"
></div>
</div>
<div
style=
"display: inline-block;"
>
<div
id=
"container3"
style=
"width:400px; height: 300px; padding:0; margin-left:0px;margin-right: 30px;"
></div>
</div>
<div
style=
"display: inline-block;"
>
<div
id=
"container4"
style=
"width:400px; height: 300px; padding:0; margin-left:0px;"
></div>
</div>
<head>
<meta
http-equiv=
"Content-Type"
content=
"text/html; charset=utf-8"
/>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1"
/>
<title>
Highcharts Example
</title>
<style
type=
"text/css"
></style>
</head>
<body>
<script
src=
"highcharts.js"
></script>
<script
src=
"modules/exporting.js"
></script>
<script
src=
"modules/export-data.js"
></script>
<div
id=
"container1"
style=
"width:1260px; height: 400px; margin: 0 auto"
></div>
<div
style=
"width:1275px; margin:0 auto;"
>
<div
style=
"display: inline-block;"
>
<div
id=
"container2"
style=
"width:400px; height: 300px; padding:0; margin-left:0px;margin-right: 30px;"
></div>
</div>
<div
style=
"display: inline-block;"
>
<div
id=
"container3"
style=
"width:400px; height: 300px; padding:0; margin-left:0px;margin-right: 30px;"
></div>
</div>
<div
style=
"display: inline-block;"
>
<div
id=
"container4"
style=
"width:400px; height: 300px; padding:0; margin-left:0px;"
></div>
</div>
</div>
<script
src=
"/socket.io/socket.io.js"
></script>
<script>
var
socket
=
io
.
connect
(
'/'
,
{
transports
:
[
'websocket'
],
upgrade
:
false
});
socket
.
emit
(
"connection"
,
"client in"
);
socket
.
on
(
"weatherInfo_minutely_send_to_client"
,
(
info
)
=>
{
//서버에서 client에게 메세지 전송
console
.
log
(
info
);
var
date
=
new
Date
().
getTime
();
chart1
.
series
[
0
].
addPoint
({
x
:
date
,
y
:
info
.
death
})
chart2
.
series
[
0
].
addPoint
({
x
:
date
,
y
:
info
.
temperature
})
chart3
.
series
[
0
].
addPoint
({
x
:
date
,
y
:
info
.
wind
})
chart4
.
series
[
0
].
addPoint
({
x
:
date
,
y
:
info
.
rain
})
<script
src=
"/socket.io/socket.io.js"
></script>
<script>
let
client_data
=
{
birth
:
"<%=birth%>"
,
name
:
"<%=name%>"
}
var
socket
=
io
.
connect
(
'/'
,{
transports
:
[
'websocket'
],
upgrade
:
false
});
socket
.
emit
(
"connection"
,
client_data
);
socket
.
on
(
"weatherInfo_minutely_send_to_client"
,(
info
)
=>
{
//서버에서 client에게 메세지 전송
console
.
log
(
info
);
});
</script>
<!-- 첫번째 그래프 -->
</script>
<script
type=
"text/javascript"
>
Highcharts
.
chart
(
"container1"
,
{
chart
:
{
type
:
"areaspline"
,
animation
:
Highcharts
.
svg
,
// don't animate in old IE
marginRight
:
10
,
events
:
{
load
:
function
()
{
// set up the updating of the chart each second
var
series
=
this
.
series
[
0
];
setInterval
(
function
()
{
var
x
=
new
Date
().
getTime
(),
// 현재 시간
y
=
0
;
//여기에 새로 넣을 값
series
.
addPoint
([
x
,
y
],
true
,
true
);
},
60000
);
//1000=1초 -> 1분=60000
}
}
},
//사망률
var
chart1
=
Highcharts
.
chart
(
"container1"
,
{
chart
:
{
type
:
"areaspline"
,
animation
:
Highcharts
.
svg
,
// don't animate in old IE
marginRight
:
10
,
// events: {
// load: function () {
// // set up the updating of the chart each second
// var series = this.series[0];
// setInterval(function () {
// var x = new Date().getTime(), // 현재 시간
// y = 0; //여기에 새로 넣을 값
// series.addPoint([x, y], true, true);
// }, 60000); //1000=1초 -> 1분=60000
// }
// }
},
time
:
{
useUTC
:
false
},
time
:
{
useUTC
:
false
},
title
:
{
text
:
"실시간 사망률"
},
xAxis
:
{
type
:
"datetime"
,
tickPixelInterval
:
150
},
yAxis
:
{
title
:
{
text
:
"<%=name%>님의 실시간 사망률"
},
...
...
@@ -83,409 +100,393 @@
type
:
"datetime"
,
tickPixelInterval
:
150
},
yAxis
:
{
title
:
{
text
:
"Value"
},
plotLines
:
[
{
value
:
0
,
width
:
1
,
color
:
"#808080"
}
]
},
tooltip
:
{
headerFormat
:
"<b>{series.name}</b><br/>"
,
pointFormat
:
"{point.x:%Y-%m-%d %H:%M:%S}<br/>{point.y:.2f}"
},
legend
:
{
//enabled: false
layout
:
"vertical"
,
align
:
"left"
,
verticalAlign
:
"top"
,
x
:
120
,
y
:
70
,
floating
:
true
,
borderWidth
:
1
,
backgroundColor
:
(
Highcharts
.
theme
&&
Highcharts
.
theme
.
legendBackgroundColor
)
||
"#FFFFFF"
},
exporting
:
{
enabled
:
false
},
series
:
[
plotLines
:
[
{
name
:
"사망률"
,
data
:
(
function
()
{
var
deathArr
=
[],
time
=
new
Date
().
getTime
();
var
length
=
<%=
dataLen
%>
;
var
i
=-
9
;
//얘는 시간계산용
var
j
=
0
;
//얘는 반복문용
for
(;
j
<
10
-
length
;
j
++
)
{
deathArr
.
push
({
x
:
time
+
i
*
60000
,
y
:
0
})
value
:
0
,
width
:
1
,
color
:
"#808080"
}
]
},
tooltip
:
{
headerFormat
:
"<b>{series.name}</b><br/>"
,
pointFormat
:
"{point.x:%Y-%m-%d %H:%M:%S}<br/>{point.y:.2f}"
},
legend
:
{
//enabled: false
layout
:
"vertical"
,
align
:
"left"
,
verticalAlign
:
"top"
,
x
:
120
,
y
:
70
,
floating
:
true
,
borderWidth
:
1
,
backgroundColor
:
(
Highcharts
.
theme
&&
Highcharts
.
theme
.
legendBackgroundColor
)
||
"#FFFFFF"
},
exporting
:
{
enabled
:
false
},
series
:
[
{
name
:
"사망률"
,
data
:
(
function
()
{
var
deathArr
=
[],
time
=
new
Date
().
getTime
();
var
length
=
<%=
dataLen
%>
;
var
i
=
-
9
;
//얘는 시간계산용
var
j
=
0
;
//얘는 반복문용
for
(;
j
<
10
-
length
;
j
++
)
{
deathArr
.
push
({
x
:
time
+
i
*
60000
,
y
:
0
})
i
++
;
}
}
<%
probArr
.
forEach
((
probArr
)
=>
{
%>
<%
probArr
.
forEach
((
probArr
)
=>
{
%>
var
temp
;
temp
=
<%=
probArr
%>
;
// for(;j<10;j++)
// {
// deathArr.push({
// x: time + i * 60000,
// y: temp
// })
// i++;
// }
deathArr
.
push
({
temp
=
<%=
probArr
%>
;
// for(;j<10;j++)
// {
// deathArr.push({
// x: time + i * 60000,
// y: temp
// })
// i++;
// }
deathArr
.
push
({
x
:
time
+
i
*
60000
,
y
:
temp
})
i
++
;
})
i
++
;
<%
})
%>
<%
})
%>
return
deathArr
;
})()
}
]
});
</script>
<!-- 두번째 그래프 -->
<script
type=
"text/javascript"
>
Highcharts
.
chart
(
"container2"
,
{
chart
:
{
type
:
"spline"
,
animation
:
Highcharts
.
svg
,
// don't animate in old IE
marginRight
:
10
,
events
:
{
load
:
function
()
{
// set up the updating of the chart each second
var
series
=
this
.
series
[
0
];
setInterval
(
function
()
{
var
x
=
new
Date
().
getTime
(),
// 현재 시간
y
=
0
;
//
series
.
addPoint
([
x
,
y
],
true
,
true
);
},
60000
);
//1000=1초
}
}
},
})()
}
]
});
//기온
var
chart2
=
Highcharts
.
chart
(
"container2"
,
{
chart
:
{
type
:
"spline"
,
animation
:
Highcharts
.
svg
,
// don't animate in old IE
marginRight
:
10
,
// events: {
// load: function () {
// // set up the updating of the chart each second
// var series = this.series[0];
// setInterval(function () {
// var x = new Date().getTime(), // 현재 시간
// y = 0; //
// series.addPoint([x, y], true, true);
// }, 60000); //1000=1초
// }
// }
},
time
:
{
useUTC
:
false
},
time
:
{
useUTC
:
false
},
title
:
{
text
:
"기온"
},
xAxis
:
{
type
:
"datetime"
,
tickPixelInterval
:
150
},
yAxis
:
{
title
:
{
text
:
"기온"
},
xAxis
:
{
type
:
"datetime"
,
tickPixelInterval
:
150
},
yAxis
:
{
title
:
{
text
:
"Value"
},
plotLines
:
[
{
value
:
0
,
width
:
1
,
color
:
"#808080"
}
]
},
tooltip
:
{
headerFormat
:
"<b>{series.name}</b><br/>"
,
pointFormat
:
"{point.x:%Y-%m-%d %H:%M:%S}<br/>{point.y:.2f}"
},
legend
:
{
//enabled: false
layout
:
"vertical"
,
align
:
"left"
,
verticalAlign
:
"top"
,
x
:
120
,
y
:
70
,
floating
:
true
,
borderWidth
:
1
,
backgroundColor
:
(
Highcharts
.
theme
&&
Highcharts
.
theme
.
legendBackgroundColor
)
||
"#FFFFFF"
text
:
"Value"
},
exporting
:
{
enabled
:
false
},
series
:
[
plotLines
:
[
{
name
:
"기온"
,
data
:
(
function
()
{
var
tempArr
=
[],
time
=
new
Date
().
getTime
();
var
length
=
<%=
dataLen
%>
;
var
i
=-
9
;
var
j
=
0
;
for
(
j
;
j
<
10
-
length
;
j
++
)
{
tempArr
.
push
({
x
:
time
+
i
*
60000
,
y
:
0
})
value
:
0
,
width
:
1
,
color
:
"#808080"
}
]
},
tooltip
:
{
headerFormat
:
"<b>{series.name}</b><br/>"
,
pointFormat
:
"{point.x:%Y-%m-%d %H:%M:%S}<br/>{point.y:.2f}"
},
legend
:
{
//enabled: false
layout
:
"vertical"
,
align
:
"left"
,
verticalAlign
:
"top"
,
x
:
120
,
y
:
70
,
floating
:
true
,
borderWidth
:
1
,
backgroundColor
:
(
Highcharts
.
theme
&&
Highcharts
.
theme
.
legendBackgroundColor
)
||
"#FFFFFF"
},
exporting
:
{
enabled
:
false
},
series
:
[
{
name
:
"기온"
,
data
:
(
function
()
{
var
tempArr
=
[],
time
=
new
Date
().
getTime
();
var
length
=
<%=
dataLen
%>
;
var
i
=
-
9
;
var
j
=
0
;
for
(
j
;
j
<
10
-
length
;
j
++
)
{
tempArr
.
push
({
x
:
time
+
i
*
60000
,
y
:
0
})
i
++
;
}
}
<%
ptArr
.
forEach
((
ptArr
)
=>
{
%>
<%
ptArr
.
forEach
((
ptArr
)
=>
{
%>
var
temp
;
temp
=
<%=
ptArr
%>
;
// for(j;j<10;j++)
// {
// tempArr.push({
// x: time + i * 60000,
// y: temp
// })
// i++;
// }
tempArr
.
push
({
temp
=
<%=
ptArr
%>
;
// for(j;j<10;j++)
// {
// tempArr.push({
// x: time + i * 60000,
// y: temp
// })
// i++;
// }
tempArr
.
push
({
x
:
time
+
i
*
60000
,
y
:
temp
})
i
++
;
})
i
++
;
<%
})
%>
<%
})
%>
return
tempArr
;
})()
}
]
});
</script>
<!-- 세번째 그래프 -->
<script
type=
"text/javascript"
>
Highcharts
.
chart
(
"container3"
,
{
chart
:
{
type
:
"spline"
,
animation
:
Highcharts
.
svg
,
// don't animate in old IE
marginRight
:
10
,
events
:
{
load
:
function
()
{
// set up the updating of the chart each second
var
series
=
this
.
series
[
0
];
setInterval
(
function
()
{
var
x
=
new
Date
().
getTime
(),
// 현재 시간
y
=
0
;
//
series
.
addPoint
([
x
,
y
],
true
,
true
);
},
60000
);
//1000=1초
}
}
},
})()
}
]
});
//풍속
var
chart3
=
Highcharts
.
chart
(
"container3"
,
{
chart
:
{
type
:
"spline"
,
animation
:
Highcharts
.
svg
,
// don't animate in old IE
marginRight
:
10
,
// events: {
// load: function () {
// // set up the updating of the chart each second
// var series = this.series[0];
// setInterval(function () {
// var x = new Date().getTime(), // 현재 시간
// y = 0; //
// series.addPoint([x, y], true, true);
// }, 60000); //1000=1초
// }
// }
},
time
:
{
useUTC
:
false
},
time
:
{
useUTC
:
false
},
title
:
{
text
:
"풍속"
},
xAxis
:
{
type
:
"datetime"
,
tickPixelInterval
:
150
},
yAxis
:
{
title
:
{
text
:
"풍속"
},
xAxis
:
{
type
:
"datetime"
,
tickPixelInterval
:
150
},
yAxis
:
{
title
:
{
text
:
"Value"
},
plotLines
:
[
{
value
:
0
,
width
:
1
,
color
:
"#808080"
}
]
},
tooltip
:
{
headerFormat
:
"<b>{series.name}</b><br/>"
,
pointFormat
:
"{point.x:%Y-%m-%d %H:%M:%S}<br/>{point.y:.2f}"
text
:
"Value"
},
legend
:
{
//enabled: false
layout
:
"vertical"
,
align
:
"left"
,
verticalAlign
:
"top"
,
x
:
120
,
y
:
70
,
floating
:
true
,
borderWidth
:
1
,
backgroundColor
:
(
Highcharts
.
theme
&&
Highcharts
.
theme
.
legendBackgroundColor
)
||
"#FFFFFF"
},
exporting
:
{
enabled
:
false
},
series
:
[
plotLines
:
[
{
name
:
"풍속"
,
data
:
(
function
()
{
var
windArr
=
[],
time
=
new
Date
().
getTime
();
var
length
=
<%=
dataLen
%>
;
var
i
=-
9
;
var
j
=
0
;
for
(
j
;
j
<
10
-
length
;
j
++
)
{
windArr
.
push
({
x
:
time
+
i
*
60000
,
y
:
0
})
value
:
0
,
width
:
1
,
color
:
"#808080"
}
]
},
tooltip
:
{
headerFormat
:
"<b>{series.name}</b><br/>"
,
pointFormat
:
"{point.x:%Y-%m-%d %H:%M:%S}<br/>{point.y:.2f}"
},
legend
:
{
//enabled: false
layout
:
"vertical"
,
align
:
"left"
,
verticalAlign
:
"top"
,
x
:
120
,
y
:
70
,
floating
:
true
,
borderWidth
:
1
,
backgroundColor
:
(
Highcharts
.
theme
&&
Highcharts
.
theme
.
legendBackgroundColor
)
||
"#FFFFFF"
},
exporting
:
{
enabled
:
false
},
series
:
[
{
name
:
"풍속"
,
data
:
(
function
()
{
var
windArr
=
[],
time
=
new
Date
().
getTime
();
var
length
=
<%=
dataLen
%>
;
var
i
=
-
9
;
var
j
=
0
;
for
(
j
;
j
<
10
-
length
;
j
++
)
{
windArr
.
push
({
x
:
time
+
i
*
60000
,
y
:
0
})
i
++
;
}
}
<%
wsArr
.
forEach
((
wsArr
)
=>
{
%>
<%
wsArr
.
forEach
((
wsArr
)
=>
{
%>
var
temp
;
temp
=
<%=
wsArr
%>
;
// for(j;j<10;j++)
// {
// windArr.push({
// x: time + i * 60000,
// y: temp
// })
// i++;
// }
windArr
.
push
({
temp
=
<%=
wsArr
%>
;
// for(j;j<10;j++)
// {
// windArr.push({
// x: time + i * 60000,
// y: temp
// })
// i++;
// }
windArr
.
push
({
x
:
time
+
i
*
60000
,
y
:
temp
})
i
++
;
})
i
++
;
<%
})
%>
<%
})
%>
return
windArr
;
})()
}
]
});
</script>
<!-- 네번째 그래프 -->
<script
type=
"text/javascript"
>
Highcharts
.
chart
(
"container4"
,
{
chart
:
{
type
:
"spline"
,
animation
:
Highcharts
.
svg
,
// don't animate in old IE
marginRight
:
10
,
events
:
{
load
:
function
()
{
// set up the updating of the chart each second
var
series
=
this
.
series
[
0
];
setInterval
(
function
()
{
var
x
=
new
Date
().
getTime
(),
// 현재 시간
y
=
0
;
//
series
.
addPoint
([
x
,
y
],
true
,
true
);
},
60000
);
//1000=1초
}
}
},
})()
}
]
});
//강수량
var
chart4
=
Highcharts
.
chart
(
"container4"
,
{
chart
:
{
type
:
"spline"
,
animation
:
Highcharts
.
svg
,
// don't animate in old IE
marginRight
:
10
,
// events: {
// load: function () {
// // set up the updating of the chart each second
// var series = this.series[0];
// setInterval(function () {
// var x = new Date().getTime(), // 현재 시간
// y = 0; //
// series.addPoint([x, y], true, true);
// }, 60000); //1000=1초
// }
// }
},
time
:
{
useUTC
:
false
},
time
:
{
useUTC
:
false
},
title
:
{
text
:
"강수량"
},
xAxis
:
{
type
:
"datetime"
,
tickPixelInterval
:
150
},
yAxis
:
{
title
:
{
text
:
"강수량"
},
xAxis
:
{
type
:
"datetime"
,
tickPixelInterval
:
150
},
yAxis
:
{
title
:
{
text
:
"Value"
},
plotLines
:
[
{
value
:
0
,
width
:
1
,
color
:
"#808080"
}
]
text
:
"Value"
},
tooltip
:
{
headerFormat
:
"<b>{series.name}</b><br/>"
,
pointFormat
:
"{point.x:%Y-%m-%d %H:%M:%S}<br/>{point.y:.2f}"
},
legend
:
{
//enabled: false
layout
:
"vertical"
,
align
:
"left"
,
verticalAlign
:
"top"
,
x
:
120
,
y
:
70
,
floating
:
true
,
borderWidth
:
1
,
backgroundColor
:
(
Highcharts
.
theme
&&
Highcharts
.
theme
.
legendBackgroundColor
)
||
"#FFFFFF"
},
exporting
:
{
enabled
:
false
},
series
:
[
plotLines
:
[
{
name
:
"강수량"
,
data
:
(
function
()
{
var
rainArr
=
[],
time
=
new
Date
().
getTime
();
var
length
=
<%=
dataLen
%>
;
var
i
=-
9
;
var
j
=
0
;
for
(
j
;
j
<
10
-
length
;
j
++
)
{
rainArr
.
push
({
x
:
time
+
i
*
60000
,
y
:
0
})
value
:
0
,
width
:
1
,
color
:
"#808080"
}
]
},
tooltip
:
{
headerFormat
:
"<b>{series.name}</b><br/>"
,
pointFormat
:
"{point.x:%Y-%m-%d %H:%M:%S}<br/>{point.y:.2f}"
},
legend
:
{
//enabled: false
layout
:
"vertical"
,
align
:
"left"
,
verticalAlign
:
"top"
,
x
:
120
,
y
:
70
,
floating
:
true
,
borderWidth
:
1
,
backgroundColor
:
(
Highcharts
.
theme
&&
Highcharts
.
theme
.
legendBackgroundColor
)
||
"#FFFFFF"
},
exporting
:
{
enabled
:
false
},
series
:
[
{
name
:
"강수량"
,
data
:
(
function
()
{
var
rainArr
=
[],
time
=
new
Date
().
getTime
();
var
length
=
<%=
dataLen
%>
;
var
i
=
-
9
;
var
j
=
0
;
for
(
j
;
j
<
10
-
length
;
j
++
)
{
rainArr
.
push
({
x
:
time
+
i
*
60000
,
y
:
0
})
i
++
;
}
}
<%
rainArr
.
forEach
((
rainArr
)
=>
{
%>
<%
rainArr
.
forEach
((
rainArr
)
=>
{
%>
var
temp
;
temp
=
<%=
rainArr
%>
;
// for(j;j<10;j++)
// {
// rainArr.push({
// x: time + i * 60000,
// y: temp
// })
// i++;
// }
rainArr
.
push
({
temp
=
<%=
rainArr
%>
;
// for(j;j<10;j++)
// {
// rainArr.push({
// x: time + i * 60000,
// y: temp
// })
// i++;
// }
rainArr
.
push
({
x
:
time
+
i
*
60000
,
y
:
temp
})
i
++
;
})
i
++
;
<%
})
%>
<%
})
%>
return
rainArr
;
})()
}
]
});
</script>
</body>
</html>
})()
}
]
});
</script>
</body>
</html>
\ No newline at end of file
...
...
Please
register
or
login
to post a comment