-
Notifications
You must be signed in to change notification settings - Fork 1
/
Dashboard.py
101 lines (79 loc) · 4.07 KB
/
Dashboard.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
import streamlit as st
import DataLoading
import altair as alt
import data_norm
st.set_page_config(layout="wide")
def get_aggregate(num, span, path):
if span == "Weeks":
# data = DataLoading.load_data(path)
data = DataLoading.load_alerts_data(path)
data = data_norm.norm_oneweek(data)
if num == 9:
return data.tail(9)
return data
elif span == "Days":
# data = DataLoading.load_data(path)
data = DataLoading.load_alerts_data(path)
data = data_norm.norm_oneday(data)
if num == 7:
return data.tail(7)
return data.tail(30)
else:
# data = DataLoading.load_data(path)
data = DataLoading.load_alerts_data(path)
data = data_norm.norm_onehour(data)
return data.tail(24)
def switch_time(time, path):
if time == "1 Day":
return get_aggregate(24, "Hours", path)
elif time == "1 Week":
return get_aggregate(7, "Days", path)
elif time == "1 Month":
return get_aggregate(30, "Days", path)
elif time == "2 Months":
return get_aggregate(9, "Weeks", path)
else:
return get_aggregate(-999, "Weeks", path)
st.title("Dashboard")
selected_fan = st.sidebar.selectbox("Fan Selector", ["Fan 1", "Fan 2", "Fan 3", "Fan 4", "Fan 5", "Fan 6", "Fan 7"])
selected_time = st.sidebar.selectbox("Amount of Time", ["1 Day", "1 Week", "1 Month", "2 Months", "All Data"])
data_load_state = st.text('Loading data...')
temperature_data = switch_time(selected_time, r"Data_set/HackPSU/" + selected_fan + "/Temperature.csv")
x_Peak_Acceleration = switch_time(selected_time, r"Data_set/HackPSU/" + selected_fan + "/X-Axis/Peak Acceleration.csv")
x_Peak_Velocity = switch_time(selected_time, r"Data_set/HackPSU/" + selected_fan + "/X-Axis/Peak Velocity.csv")
x_RMS_Acceleration = switch_time(selected_time, r"Data_set/HackPSU/" + selected_fan + "/X-Axis/RMS Acceleration.csv")
x_RMS_Velocity = switch_time(selected_time, r"Data_set/HackPSU/" + selected_fan + "/X-Axis/RMS Velocity.csv")
y_Peak_Acceleration = switch_time(selected_time, r"Data_set/HackPSU/" + selected_fan + "/Y-Axis/Peak Acceleration.csv")
y_Peak_Velocity = switch_time(selected_time, r"Data_set/HackPSU/" + selected_fan + "/Y-Axis/Peak Velocity.csv")
y_RMS_Acceleration = switch_time(selected_time, r"Data_set/HackPSU/" + selected_fan + "/Y-Axis/RMS Acceleration.csv")
y_RMS_Velocity = switch_time(selected_time, r"Data_set/HackPSU/" + selected_fan + "/Y-Axis/RMS Velocity.csv")
data_load_state.text('Loading data...done!')
# Line chart for Temps
st.write("Temperature")
linechart = alt.Chart(temperature_data).mark_line().encode(y="Value", x="Time")
st.altair_chart(linechart, use_container_width=True)
col1, col2 = st.columns(2)
col1.write("X-Axis Peak Acceleration")
linechart = alt.Chart(x_Peak_Acceleration).mark_line().encode(y="Value", x="Time")
col1.altair_chart(linechart, use_container_width=True)
col2.write("X-Axis Peak Velocity")
linechart = alt.Chart(x_Peak_Velocity).mark_line().encode(y="Value", x="Time")
col2.altair_chart(linechart, use_container_width=True)
col1.write("X-Axis RMS Acceleration")
linechart = alt.Chart(x_RMS_Acceleration).mark_line().encode(y="Value", x="Time")
col1.altair_chart(linechart, use_container_width=True)
col2.write("X-Axis RMS Velocity")
linechart = alt.Chart(x_RMS_Velocity).mark_line().encode(y="Value", x="Time")
col2.altair_chart(linechart, use_container_width=True)
col1.write("Y-Axis Peak Acceleration")
linechart = alt.Chart(y_Peak_Acceleration).mark_line().encode(y="Value", x="Time")
col1.altair_chart(linechart, use_container_width=True)
col2.write("Y-Axis Peak Velocity")
linechart = alt.Chart(y_Peak_Velocity).mark_line().encode(y="Value", x="Time")
col2.altair_chart(linechart, use_container_width=True)
col1.write("Y-Axis RMS Acceleration")
linechart = alt.Chart(y_RMS_Acceleration).mark_line().encode(y="Value", x="Time")
col1.altair_chart(linechart, use_container_width=True)
col2.write("Y-Axis RMS Velocity")
linechart = alt.Chart(y_RMS_Velocity).mark_line().encode(y="Value", x="Time")
col2.altair_chart(linechart, use_container_width=True)