Update app.py
Browse files
app.py
CHANGED
|
@@ -211,9 +211,11 @@ def main():
|
|
| 211 |
with col2:
|
| 212 |
intervention_frequency = intervention_stats['Intervention Frequency (%)'].values[0]
|
| 213 |
# Display the "Intervention Frequency (%)" text
|
| 214 |
-
st.markdown("<h3 style='color: #358E66;'>Intervention Frequency</h3>", unsafe_allow_html=True)
|
|
|
|
| 215 |
# Display the frequency value below it
|
| 216 |
-
st.markdown(f"<h1 style='color: #358E66;'>{intervention_frequency}%</h1>", unsafe_allow_html=True)
|
|
|
|
| 217 |
|
| 218 |
# Add download button for Intervention Session Statistics chart
|
| 219 |
download_chart(intervention_fig, "intervention_statistics_chart.png")
|
|
@@ -226,7 +228,6 @@ def main():
|
|
| 226 |
# Visualization for Student Metrics
|
| 227 |
student_metrics_fig = plot_student_metrics(student_metrics_df)
|
| 228 |
|
| 229 |
-
# NEW Expanded version of Visualization for Student Metrics
|
| 230 |
# Compute Student Metric Averages
|
| 231 |
attendance_avg_stats, engagement_avg_stats = compute_average_metrics(student_metrics_df)
|
| 232 |
|
|
@@ -240,14 +241,14 @@ def main():
|
|
| 240 |
# Display the "Attendance Average (%)" text and value
|
| 241 |
st.markdown("<h4 style='color: #358E66;'>Attendance Average (%)</h4>", unsafe_allow_html=True)
|
| 242 |
if attendance_avg_stats is not None:
|
| 243 |
-
st.markdown(f"<h2 style='color: #358E66;'>{attendance_avg_stats}%</h2>", unsafe_allow_html=True)
|
| 244 |
else:
|
| 245 |
st.markdown("<h2 style='color: #358E66;'>N/A</h2>", unsafe_allow_html=True)
|
| 246 |
|
| 247 |
# Display the "Engagement Average (%)" text and value
|
| 248 |
st.markdown("<h4 style='color: #358E66;'>Engagement Average (%)</h4>", unsafe_allow_html=True)
|
| 249 |
if engagement_avg_stats is not None:
|
| 250 |
-
st.markdown(f"<h2 style='color: #358E66;'>{engagement_avg_stats}%</h2>", unsafe_allow_html=True)
|
| 251 |
else:
|
| 252 |
st.markdown("<h2 style='color: #358E66;'>N/A</h2>", unsafe_allow_html=True)
|
| 253 |
|
|
@@ -432,7 +433,6 @@ def compute_student_metrics(df):
|
|
| 432 |
student_metrics_df.rename(columns={'index': 'Student'}, inplace=True)
|
| 433 |
return student_metrics_df
|
| 434 |
|
| 435 |
-
#NEW
|
| 436 |
def compute_average_metrics(student_metrics_df):
|
| 437 |
# Calculate the attendance and engagement average percentages across students
|
| 438 |
attendance_avg_stats = student_metrics_df['Attendance (%)'].mean() # Calculate the average attendance percentage
|
|
@@ -444,7 +444,6 @@ def compute_average_metrics(student_metrics_df):
|
|
| 444 |
|
| 445 |
return attendance_avg_stats, engagement_avg_stats
|
| 446 |
|
| 447 |
-
|
| 448 |
def plot_student_metrics(student_metrics_df):
|
| 449 |
# Create the figure and axis
|
| 450 |
fig, ax = plt.subplots(figsize=(10, 6)) # Increased figure size for better readability
|
|
|
|
| 211 |
with col2:
|
| 212 |
intervention_frequency = intervention_stats['Intervention Frequency (%)'].values[0]
|
| 213 |
# Display the "Intervention Frequency (%)" text
|
| 214 |
+
# st.markdown("<h3 style='color: #358E66;'>Intervention Frequency</h3>", unsafe_allow_html=True)
|
| 215 |
+
st.markdown("<h3 style='color: #358E66; margin-bottom: 0px;'>Intervention Frequency</h3>",unsafe_allow_html=True)
|
| 216 |
# Display the frequency value below it
|
| 217 |
+
# st.markdown(f"<h1 style='color: #358E66;'>{intervention_frequency}%</h1>", unsafe_allow_html=True)
|
| 218 |
+
st.markdown(f"<h1 style='color: #358E66; margin-top: 0px;'>{intervention_frequency}%</h1>", unsafe_allow_html=True)
|
| 219 |
|
| 220 |
# Add download button for Intervention Session Statistics chart
|
| 221 |
download_chart(intervention_fig, "intervention_statistics_chart.png")
|
|
|
|
| 228 |
# Visualization for Student Metrics
|
| 229 |
student_metrics_fig = plot_student_metrics(student_metrics_df)
|
| 230 |
|
|
|
|
| 231 |
# Compute Student Metric Averages
|
| 232 |
attendance_avg_stats, engagement_avg_stats = compute_average_metrics(student_metrics_df)
|
| 233 |
|
|
|
|
| 241 |
# Display the "Attendance Average (%)" text and value
|
| 242 |
st.markdown("<h4 style='color: #358E66;'>Attendance Average (%)</h4>", unsafe_allow_html=True)
|
| 243 |
if attendance_avg_stats is not None:
|
| 244 |
+
st.markdown(f"<h2 style='color: #358E66; margin-top: 0px;'>{attendance_avg_stats}%</h2>", unsafe_allow_html=True)
|
| 245 |
else:
|
| 246 |
st.markdown("<h2 style='color: #358E66;'>N/A</h2>", unsafe_allow_html=True)
|
| 247 |
|
| 248 |
# Display the "Engagement Average (%)" text and value
|
| 249 |
st.markdown("<h4 style='color: #358E66;'>Engagement Average (%)</h4>", unsafe_allow_html=True)
|
| 250 |
if engagement_avg_stats is not None:
|
| 251 |
+
st.markdown(f"<h2 style='color: #358E66; margin-top: 0px;'>{engagement_avg_stats}%</h2>", unsafe_allow_html=True)
|
| 252 |
else:
|
| 253 |
st.markdown("<h2 style='color: #358E66;'>N/A</h2>", unsafe_allow_html=True)
|
| 254 |
|
|
|
|
| 433 |
student_metrics_df.rename(columns={'index': 'Student'}, inplace=True)
|
| 434 |
return student_metrics_df
|
| 435 |
|
|
|
|
| 436 |
def compute_average_metrics(student_metrics_df):
|
| 437 |
# Calculate the attendance and engagement average percentages across students
|
| 438 |
attendance_avg_stats = student_metrics_df['Attendance (%)'].mean() # Calculate the average attendance percentage
|
|
|
|
| 444 |
|
| 445 |
return attendance_avg_stats, engagement_avg_stats
|
| 446 |
|
|
|
|
| 447 |
def plot_student_metrics(student_metrics_df):
|
| 448 |
# Create the figure and axis
|
| 449 |
fig, ax = plt.subplots(figsize=(10, 6)) # Increased figure size for better readability
|