Spaces:
Runtime error
Runtime error
add model
Browse files- README.md +4 -1
- assets/datasets/algeria_dataset/GLDAS_GFS_population_Algeria_2015_2023_final.csv +0 -0
- assets/datasets/bhopal_dataset/Bhopal_CompleteData_Final_Modified.csv +0 -0
- assets/images/algeria.png +0 -0
- assets/images/background.webp +0 -0
- assets/images/banner2.png +0 -0
- assets/images/bhopal.png +0 -0
- assets/images/logo.png +0 -0
- assets/images/omdena-logo.png +0 -0
- assets/misc/styles.css +61 -0
- config.py +77 -9
- main.py +39 -18
- _model.py β model.py +0 -0
README.md
CHANGED
@@ -11,6 +11,9 @@ pinned: false
|
|
11 |
|
12 |
# Omdena Algeria & Bhopal Streamlit App
|
13 |
|
|
|
|
|
|
|
14 |
## Requirements
|
15 |
|
16 |
To run this locally, you need to have the following dependencies installed:
|
@@ -28,4 +31,4 @@ To start the system, run the following command in your terminal:
|
|
28 |
|
29 |
```shell
|
30 |
streamlit run main.py
|
31 |
-
|
|
|
11 |
|
12 |
# Omdena Algeria & Bhopal Streamlit App
|
13 |
|
14 |
+
## Links:
|
15 |
+
- Hugging Face: [Visit App](https://huggingface.co/spaces/arpy8/Omdena_Algeria_Bhopal_Streamlit_App)
|
16 |
+
- Streamlit Share: [Visit App](https://water-management-and-forecasting-algeria-bhopal.streamlit.app/)
|
17 |
## Requirements
|
18 |
|
19 |
To run this locally, you need to have the following dependencies installed:
|
|
|
31 |
|
32 |
```shell
|
33 |
streamlit run main.py
|
34 |
+
``'
|
assets/datasets/algeria_dataset/GLDAS_GFS_population_Algeria_2015_2023_final.csv
ADDED
The diff for this file is too large to render.
See raw diff
|
|
assets/datasets/bhopal_dataset/Bhopal_CompleteData_Final_Modified.csv
ADDED
The diff for this file is too large to render.
See raw diff
|
|
assets/images/algeria.png
ADDED
assets/images/background.webp
ADDED
assets/images/banner2.png
ADDED
assets/images/bhopal.png
ADDED
assets/images/logo.png
ADDED
assets/images/omdena-logo.png
ADDED
assets/misc/styles.css
ADDED
@@ -0,0 +1,61 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
h3 {
|
2 |
+
color: #fff;
|
3 |
+
font-size:1.393rem;
|
4 |
+
}
|
5 |
+
|
6 |
+
p {
|
7 |
+
color: #ffffff99;
|
8 |
+
text-shadow: 0px 0px #ffffff99;
|
9 |
+
}
|
10 |
+
|
11 |
+
a:link {
|
12 |
+
text-decoration: none;
|
13 |
+
}
|
14 |
+
a:visited {
|
15 |
+
text-decoration: none;
|
16 |
+
}
|
17 |
+
a:hover {
|
18 |
+
text-decoration: none;
|
19 |
+
}
|
20 |
+
a:active {
|
21 |
+
text-decoration: none;
|
22 |
+
}
|
23 |
+
|
24 |
+
footer {
|
25 |
+
visibility: hidden;
|
26 |
+
}
|
27 |
+
|
28 |
+
body {
|
29 |
+
background-color: #f8f8f8;
|
30 |
+
font-family: Arial, Helvetica, sans-serif;
|
31 |
+
}
|
32 |
+
|
33 |
+
#MainMenu {
|
34 |
+
visibility: hidden;
|
35 |
+
}
|
36 |
+
|
37 |
+
.team-container {
|
38 |
+
display: flex;
|
39 |
+
justify-content: center;
|
40 |
+
flex-wrap: wrap;
|
41 |
+
gap: 20px;
|
42 |
+
margin: 30px auto;
|
43 |
+
}
|
44 |
+
|
45 |
+
.team-member {
|
46 |
+
background-color: #ffffff35;
|
47 |
+
border-radius: 10px;
|
48 |
+
padding: 20px;
|
49 |
+
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
|
50 |
+
text-align: center;
|
51 |
+
width: 200px;
|
52 |
+
height: 130px;
|
53 |
+
}
|
54 |
+
|
55 |
+
[data-testid="stSidebar"] {
|
56 |
+
background-color: #00000050;
|
57 |
+
}
|
58 |
+
|
59 |
+
h1 .sidebar_h1 {
|
60 |
+
color: #00ff00;
|
61 |
+
}
|
config.py
CHANGED
@@ -1,16 +1,24 @@
|
|
1 |
-
CSS = open("assets/styles.css", 'r').read()
|
2 |
|
3 |
-
IMG_BANNER = "assets/banner.png"
|
4 |
-
|
5 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6 |
|
7 |
SIDEBAR_TEXT_1 = """
|
8 |
-
<center><h1>Omdena
|
9 |
"""
|
10 |
SIDEBAR_TEXT_2 = """
|
11 |
<hr>
|
12 |
<h3 class='sidebar_h1'>Disclaimer</h3>
|
13 |
<h5 class='sidebar_h1'>The predictions provided by this system are for informational purposes only.</h5>
|
|
|
14 |
"""
|
15 |
|
16 |
|
@@ -57,12 +65,72 @@ Refine the github repository of the project and prepare the final demo for prese
|
|
57 |
"""
|
58 |
|
59 |
|
60 |
-
|
61 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
"""
|
63 |
|
64 |
|
65 |
-
CONTRIBUTORS = """
|
66 |
<h1 style="text-align: center; color:#FFF6F4;">A heartfelt thankyou to all our contributors β€οΈ</h1><hr>
|
67 |
<div style="text-align:center;">
|
68 |
<table>
|
@@ -74,7 +142,7 @@ CONTRIBUTORS = """
|
|
74 |
<td>Omdena Algeria Chapter</td>
|
75 |
<td>Kheira Lakhdari</td>
|
76 |
</tr>
|
77 |
-
<tr>
|
78 |
<td>Omdena Bhopal Chapter</td>
|
79 |
<td>Chapter Lead</td>
|
80 |
</tr>
|
|
|
1 |
+
CSS = open("assets/misc/styles.css", 'r').read()
|
2 |
|
3 |
+
IMG_BANNER = "assets/images/banner.png"
|
4 |
+
IMG_BANNER2 = "assets/images/banner2.png"
|
5 |
+
IMG_OMDENA = "assets/images/omdena-logo.png"
|
6 |
+
IMG_LOGO = "assets/images/logo.png"
|
7 |
+
IMG_ALGERIA = "assets/images/algeria.png"
|
8 |
+
IMG_BHOPAL = "assets/images/bhopal.png"
|
9 |
+
IMG_BACKGROUND = "assets/images/background.webp"
|
10 |
+
|
11 |
+
ALGERIA_DATASET = "assets/datasets/algeria_dataset/GLDAS_GFS_population_Algeria_2015_2023_final.csv"
|
12 |
+
BHOPAL_DATASET = "assets/datasets/bhopal_dataset/Bhopal_CompleteData_Final_Modified.csv"
|
13 |
|
14 |
SIDEBAR_TEXT_1 = """
|
15 |
+
<center><h1>Omdena Algeria & Bhopal Chapter</h1></center>
|
16 |
"""
|
17 |
SIDEBAR_TEXT_2 = """
|
18 |
<hr>
|
19 |
<h3 class='sidebar_h1'>Disclaimer</h3>
|
20 |
<h5 class='sidebar_h1'>The predictions provided by this system are for informational purposes only.</h5>
|
21 |
+
<hr>
|
22 |
"""
|
23 |
|
24 |
|
|
|
65 |
"""
|
66 |
|
67 |
|
68 |
+
OVERVIEW_PHASE1 = """
|
69 |
+
## Phase 1: Data Collection & Preprocessing
|
70 |
+
[Dagshub Directory](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/data)
|
71 |
+
|
72 |
+
The first phase is all about collecting data from different sources and merging them into a single dataset. The dataset is then preprocessed and cleaned to remove any missing values and outliers. The final dataset is then used for further analysis and model building.
|
73 |
+
1. Raw Datasets: [Visit Link](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/data/raw)
|
74 |
+
2. Preprocessed Datasets: [Visit Link](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/data/processed)
|
75 |
+
|
76 |
+
##### 3. Final Datasets:
|
77 |
+
"""
|
78 |
+
|
79 |
+
OVERVIEW_PHASE2 = """
|
80 |
+
---
|
81 |
+
## Phase 2: Exploratory Data Analysis (EDA)
|
82 |
+
[Dagshub Directory](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task2_EDA/notebooks)
|
83 |
+
|
84 |
+
EDA is involves delving into raw datasets with a curious mindset, employing statistical techniques and visualizations to unravel the underlying patterns, anomalies, and relationships within the data. It's a crucial preliminary step in the data analysis journey, aiming to extract meaningful insights, identify trends, and inform subsequent analytical decisions.
|
85 |
+
All the jupyter notebooks created by our contributors for EDA can be found below:
|
86 |
+
|
87 |
+
##### **A) Population**
|
88 |
+
1. [EDA_Amir_FARES_Algiers borders and population.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task2_EDA/notebooks/Population/EDA_Amir_FARES_Algiers%20borders%20and%20population.ipynb), by **Amir Fares**
|
89 |
+
2. [EDA_Bhopal_Population_Michelle_COYLE.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task2_EDA/notebooks/Population/EDA_Bhopal_Population_Michelle_COYLE.ipynb), by **Michelle Coyle**
|
90 |
+
3. [Population_data_EDA_Meriem_.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task2_EDA/notebooks/Population/Population_data_EDA_Meriem_.ipynb), by Meriem Arab
|
91 |
+
|
92 |
+
##### **B) Surface and Ground Water**
|
93 |
+
1. [GFS_GLDAS_EDA_Weather_MihoRosenberg.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task2_EDA/notebooks/Surface%20&%20Groundwater/GFS_GLDAS_EDA_Weather_MihoRosenberg.ipynb), by **Miho Rosenberg**
|
94 |
+
2. [EDA_Bhopal_Surface_Water_Michelle_COYLE.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task2_EDA/notebooks/Surface%20&%20Groundwater/EDA_Bhopal_Surface_Water_Michelle_COYLE.ipynb), by **Michelle Coyle**
|
95 |
+
3. [EDA_GLDAS_Hariprasad_VL.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task2_EDA/notebooks/Surface%20&%20Groundwater/EDA_GLDAS_Hariprasad_VL.ipynb), by **Hariprasad VL**
|
96 |
+
|
97 |
+
##### **C) Weather Parameters**
|
98 |
+
1. [Bhopal_Rainfall_EDA_Hariprasad_VL.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task2_EDA/notebooks/Weather%20Parameters/Bhopal_Rainfall_EDA_Hariprasad_VL.ipynb), by **Hariprasad VL**
|
99 |
+
2. [EDA_Bhopal_Weather_MihoRosenberg.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task2_EDA/notebooks/Weather%20Parameters/EDA_Bhopal_Weather_MihoRosenberg.ipynb), by **Miho Rosenberg**
|
100 |
+
3. [EDA_Meriem_Arab.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task2_EDA/notebooks/Weather%20Parameters/EDA_Meriem_Arab.ipynb), by **Meriem Arab**
|
101 |
+
4. [EDA_Weather_Algeria_Meriem.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task2_EDA/notebooks/Weather%20Parameters/EDA_Weather_Algeria_Meriem.ipynb), by **Meriem Arab**
|
102 |
+
5. [EDA_weather_Emanuel_AFESSA.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task2_EDA/notebooks/Weather%20Parameters/EDA_weather_Emanuel_AFESSA.ipynb), by **Emanuel Afessa**
|
103 |
+
"""
|
104 |
+
|
105 |
+
OVERVIEW_PHASE3 = """
|
106 |
+
---
|
107 |
+
## Phase 3: Preprocessing
|
108 |
+
[Dagshub Directory](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task3_Preprocessing/notebooks)
|
109 |
+
|
110 |
+
Data preprocessing involves cleaning and transforming the data to make it suitable for analysis. The goal of data preprocessing is to make the data accurate, consistent, and suitable for analysis. It helps to improve the quality and efficiency of the data mining process. Notebooks developed by our contributors are mentioned below:
|
111 |
+
|
112 |
+
1. [AlgeriaModifiedCalculations_AmirFARES.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task3_Preprocessing/notebooks/AlgeriaModifiedCalculations_AmirFARES.ipynb), by **Amir Fares**
|
113 |
+
2. [Modified_preprocessing_Bhopal_Hariprasad.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task3_Preprocessing/notebooks/Modified_preprocessing_Bhopal_Hariprasad.ipynb), by **Hariprasad**
|
114 |
+
3. [combine_bhopal_GLDAS_GFS_MihoRosenberg.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task3_Preprocessing/notebooks/combine_bhopal_GLDAS_GFS_MihoRosenberg.ipynb), by **Miho Rosenberg**
|
115 |
+
4. [preprocessing_algeria_MihoRosenberg.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task3_Preprocessing/notebooks/preprocessing_algeria_MihoRosenberg.ipynb), by **Miho Rosenberg**
|
116 |
+
5. [preprocessing_bhopal_MihoRosenberg.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task3_Preprocessing/notebooks/preprocessing_bhopal_MihoRosenberg.ipynb), by **Miho Rosenberg**
|
117 |
+
"""
|
118 |
+
|
119 |
+
OVERVIEW_PHASE4 = """
|
120 |
+
---
|
121 |
+
## Phase 4: Model Development
|
122 |
+
[Dagshub Directory](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task4_ModelDevelopment/notebooks)
|
123 |
+
|
124 |
+
Model development is the most important part of the project. Model development is the iterative process of creating and refining mathematical or computational representations to understand or predict phenomena. The model is developed using the final preprocessed dataset from the previous phases.
|
125 |
+
|
126 |
+
Collaborator Notebooks:
|
127 |
+
|
128 |
+
1. [Algeria_Modeling_Amir_FARES.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task4_ModelDevelopment/notebooks/Algeria_Modeling_Amir_FARES.ipynb), by Amir Fares
|
129 |
+
2. [CNN-LSTM Model Abhinav Agrawal.ipynb](https://dagshub.com/Omdena/AlgeriaBhopal_WaterManagementandForecasting/src/main/src/Task4_ModelDevelopment/notebooks/CNN-LSTM%20Model%20Abhinav%20Agrawal.ipynb), by Abhinav Agrawal
|
130 |
"""
|
131 |
|
132 |
|
133 |
+
CONTRIBUTORS = """
|
134 |
<h1 style="text-align: center; color:#FFF6F4;">A heartfelt thankyou to all our contributors β€οΈ</h1><hr>
|
135 |
<div style="text-align:center;">
|
136 |
<table>
|
|
|
142 |
<td>Omdena Algeria Chapter</td>
|
143 |
<td>Kheira Lakhdari</td>
|
144 |
</tr>
|
145 |
+
<tr>
|
146 |
<td>Omdena Bhopal Chapter</td>
|
147 |
<td>Chapter Lead</td>
|
148 |
</tr>
|
main.py
CHANGED
@@ -2,13 +2,10 @@ import base64
|
|
2 |
import streamlit as st
|
3 |
|
4 |
from config import *
|
5 |
-
from
|
|
|
|
|
6 |
|
7 |
-
st.set_page_config(
|
8 |
-
page_title=f"Omdena Algeria & Bhopal Chapter",
|
9 |
-
page_icon="π¦",
|
10 |
-
initial_sidebar_state="expanded"
|
11 |
-
)
|
12 |
|
13 |
def set_page_background(png_file):
|
14 |
@st.cache_data()
|
@@ -37,38 +34,62 @@ def set_page_background(png_file):
|
|
37 |
'''
|
38 |
st.markdown(custom_css, unsafe_allow_html=True)
|
39 |
|
40 |
-
set_page_background('assets/background.webp')
|
41 |
-
st.markdown(f"<style>{CSS}</style>", unsafe_allow_html=True)
|
42 |
|
43 |
def home_page():
|
44 |
left, mid, right = st.columns([2, 3, 1])
|
45 |
with left, right:
|
46 |
st.empty()
|
47 |
with mid:
|
48 |
-
st.image(IMG_OMDENA, width=
|
49 |
|
50 |
st.write("<center><h1 style='font-size: 2.7rem;'>Water Management and Forecasting Project in Algeria & Bhopal<br><br></h1></center>", unsafe_allow_html=True)
|
51 |
|
52 |
with st.expander("π **PROJECT PROBLEM**", expanded=True):
|
53 |
st.write(PROJECT_PROBLEM)
|
54 |
-
with st.expander("π― **PROJECT GOALS**"):
|
55 |
st.write(PROJECT_GOALS)
|
56 |
-
with st.expander("π **PROJECT BACKGROUND**"):
|
57 |
st.write(PROJECT_BACKGROUND, unsafe_allow_html=True)
|
58 |
-
with st.expander("π **PROJECT TIMELINE**"):
|
59 |
st.write(PROJECT_TIMELINE)
|
60 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
61 |
def main():
|
62 |
-
st.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
63 |
st.sidebar.write(SIDEBAR_TEXT_1, unsafe_allow_html=True)
|
64 |
-
selected_task = st.sidebar.selectbox("Please navigate through the different sections of our website from here", ["Home", "
|
65 |
st.sidebar.write(SIDEBAR_TEXT_2, unsafe_allow_html=True)
|
66 |
|
67 |
-
if selected_task == "Home":
|
68 |
home_page()
|
69 |
-
elif selected_task == "
|
70 |
-
|
71 |
-
elif selected_task == "Model":
|
72 |
model_page()
|
73 |
elif selected_task == "Contributors":
|
74 |
st.balloons()
|
|
|
2 |
import streamlit as st
|
3 |
|
4 |
from config import *
|
5 |
+
from model import model_page
|
6 |
+
import pandas as pd
|
7 |
+
import streamlit.components.v1 as components
|
8 |
|
|
|
|
|
|
|
|
|
|
|
9 |
|
10 |
def set_page_background(png_file):
|
11 |
@st.cache_data()
|
|
|
34 |
'''
|
35 |
st.markdown(custom_css, unsafe_allow_html=True)
|
36 |
|
|
|
|
|
37 |
|
38 |
def home_page():
|
39 |
left, mid, right = st.columns([2, 3, 1])
|
40 |
with left, right:
|
41 |
st.empty()
|
42 |
with mid:
|
43 |
+
st.image(IMG_OMDENA, width=170)
|
44 |
|
45 |
st.write("<center><h1 style='font-size: 2.7rem;'>Water Management and Forecasting Project in Algeria & Bhopal<br><br></h1></center>", unsafe_allow_html=True)
|
46 |
|
47 |
with st.expander("π **PROJECT PROBLEM**", expanded=True):
|
48 |
st.write(PROJECT_PROBLEM)
|
49 |
+
with st.expander("π― **PROJECT GOALS**", expanded=True):
|
50 |
st.write(PROJECT_GOALS)
|
51 |
+
with st.expander("π **PROJECT BACKGROUND**", expanded=True):
|
52 |
st.write(PROJECT_BACKGROUND, unsafe_allow_html=True)
|
53 |
+
with st.expander("π **PROJECT TIMELINE**", expanded=True):
|
54 |
st.write(PROJECT_TIMELINE)
|
55 |
|
56 |
+
def overview_page():
|
57 |
+
st.write("<center><h1>Project Overview</h1></center>", unsafe_allow_html=True)
|
58 |
+
|
59 |
+
algeria_dataframe = pd.read_csv(ALGERIA_DATASET)
|
60 |
+
bhopal_dataframe = pd.read_csv(BHOPAL_DATASET)
|
61 |
+
|
62 |
+
st.write(OVERVIEW_PHASE1)
|
63 |
+
with st.expander("**A) Algeria Dataset**"):
|
64 |
+
st.dataframe(algeria_dataframe, use_container_width=True)
|
65 |
+
with st.expander("**B) Bhopal Dataset**"):
|
66 |
+
st.dataframe(bhopal_dataframe, use_container_width=True)
|
67 |
+
|
68 |
+
st.write(OVERVIEW_PHASE2)
|
69 |
+
st.write(OVERVIEW_PHASE3)
|
70 |
+
st.write(OVERVIEW_PHASE4)
|
71 |
+
|
72 |
+
|
73 |
def main():
|
74 |
+
st.set_page_config(
|
75 |
+
page_title=f"Omdena Algeria & Bhopal Chapter",
|
76 |
+
page_icon="π¦",
|
77 |
+
initial_sidebar_state="expanded"
|
78 |
+
)
|
79 |
+
|
80 |
+
set_page_background(IMG_BACKGROUND)
|
81 |
+
st.markdown(f"<style>{CSS}</style>", unsafe_allow_html=True)
|
82 |
+
|
83 |
+
st.sidebar.image(IMG_BANNER2, width=280)
|
84 |
st.sidebar.write(SIDEBAR_TEXT_1, unsafe_allow_html=True)
|
85 |
+
selected_task = st.sidebar.selectbox("Please navigate through the different sections of our website from here", ["Home Page", "Project Overview", "Developed Model", "Contributors"], label_visibility="hidden")
|
86 |
st.sidebar.write(SIDEBAR_TEXT_2, unsafe_allow_html=True)
|
87 |
|
88 |
+
if selected_task == "Home Page":
|
89 |
home_page()
|
90 |
+
elif selected_task == "Project Overview":
|
91 |
+
overview_page()
|
92 |
+
elif selected_task == "Developed Model":
|
93 |
model_page()
|
94 |
elif selected_task == "Contributors":
|
95 |
st.balloons()
|
_model.py β model.py
RENAMED
File without changes
|