Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -260,14 +260,14 @@ class ReportGenerator:
|
|
260 |
Este relatório apresenta uma análise abrangente do desempenho dos alunos nas atividades realizadas.
|
261 |
Os dados são analisados considerando três aspectos principais:
|
262 |
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
|
267 |
Os alunos são classificados em três níveis de acordo com seu desempenho:
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
|
272 |
A eficiência é medida em acertos por hora, permitindo identificar alunos que
|
273 |
conseguem bons resultados com uso eficiente do tempo.
|
@@ -287,14 +287,14 @@ class ReportGenerator:
|
|
287 |
pdf.set_font('Arial', '', 11)
|
288 |
stats_text = f"""
|
289 |
Participação e Resultados:
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
|
295 |
Distribuição de Desempenho:
|
296 |
-
|
297 |
-
|
298 |
"""
|
299 |
pdf.multi_cell(0, 7, stats_text)
|
300 |
|
@@ -305,12 +305,12 @@ class ReportGenerator:
|
|
305 |
pdf.set_font('Arial', '', 11)
|
306 |
|
307 |
pdf.ln(3)
|
308 |
-
pdf.cell(0, 7, "
|
309 |
for aluno, acertos in self.stats['top_performers']:
|
310 |
pdf.cell(0, 7, f"• {aluno}: {acertos:.0f} acertos", 0, 1)
|
311 |
|
312 |
pdf.ln(3)
|
313 |
-
pdf.cell(0, 7, "
|
314 |
for aluno, eficiencia, acertos in self.stats['most_efficient']:
|
315 |
pdf.cell(0, 7, f"• {aluno}: {eficiencia:.1f} acertos/hora ({acertos:.0f} acertos totais)", 0, 1)
|
316 |
|
@@ -331,9 +331,9 @@ class ReportGenerator:
|
|
331 |
pdf.set_font('Arial', '', 11)
|
332 |
pdf.multi_cell(0, 6, """
|
333 |
Este gráfico ilustra como os alunos estão distribuídos entre os três níveis de desempenho.
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
""")
|
338 |
|
339 |
elif i == 1:
|
@@ -342,9 +342,9 @@ class ReportGenerator:
|
|
342 |
pdf.multi_cell(0, 6, """
|
343 |
Destaca os dez alunos com maior número de acertos absolutos.
|
344 |
Este ranking permite:
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
""")
|
349 |
|
350 |
elif i == 2:
|
@@ -353,10 +353,10 @@ class ReportGenerator:
|
|
353 |
pdf.multi_cell(0, 6, """
|
354 |
Mostra a relação entre tempo dedicado e número de acertos.
|
355 |
Pontos importantes:
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
""")
|
361 |
|
362 |
elif i == 3:
|
@@ -365,9 +365,9 @@ class ReportGenerator:
|
|
365 |
pdf.multi_cell(0, 6, """
|
366 |
Analisa se mais tarefas realizadas resultam em melhor desempenho.
|
367 |
A linha de tendência (tracejada) indica:
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
""")
|
372 |
|
373 |
# Detalhamento por Nível
|
@@ -421,20 +421,20 @@ class ReportGenerator:
|
|
421 |
Com base na análise dos dados, recomenda-se:
|
422 |
|
423 |
1. Ações Imediatas:
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
|
428 |
2. Melhorias no Processo:
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
|
433 |
3. Próximos Passos:
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
"""
|
439 |
pdf.multi_cell(0, 7, recom_text)
|
440 |
|
|
|
260 |
Este relatório apresenta uma análise abrangente do desempenho dos alunos nas atividades realizadas.
|
261 |
Os dados são analisados considerando três aspectos principais:
|
262 |
|
263 |
+
- Acertos: Total de questões respondidas corretamente
|
264 |
+
- Engajamento: Número de tarefas completadas
|
265 |
+
- Dedicação: Tempo investido nas atividades
|
266 |
|
267 |
Os alunos são classificados em três níveis de acordo com seu desempenho:
|
268 |
+
- Avançado: 10 ou mais acertos - Excelente domínio do conteúdo
|
269 |
+
- Intermediário: 5 a 9 acertos - Bom entendimento, com espaço para melhorias
|
270 |
+
- Necessita Atenção: Menos de 5 acertos - Requer suporte adicional
|
271 |
|
272 |
A eficiência é medida em acertos por hora, permitindo identificar alunos que
|
273 |
conseguem bons resultados com uso eficiente do tempo.
|
|
|
287 |
pdf.set_font('Arial', '', 11)
|
288 |
stats_text = f"""
|
289 |
Participação e Resultados:
|
290 |
+
- Total de Alunos Participantes: {self.stats['total_alunos']}
|
291 |
+
- Média de Tarefas por Aluno: {self.stats['media_tarefas']:.1f}
|
292 |
+
- Média de Acertos: {self.stats['media_acertos']:.1f}
|
293 |
+
- Tempo Médio de Dedicação: {minutos} minutos e {segundos} segundos
|
294 |
|
295 |
Distribuição de Desempenho:
|
296 |
+
- Desvio Padrão: {self.stats['desvio_padrao']:.1f} acertos
|
297 |
+
- Mediana: {self.stats['mediana_acertos']:.1f} acertos
|
298 |
"""
|
299 |
pdf.multi_cell(0, 7, stats_text)
|
300 |
|
|
|
305 |
pdf.set_font('Arial', '', 11)
|
306 |
|
307 |
pdf.ln(3)
|
308 |
+
pdf.cell(0, 7, "Melhores Desempenhos:", 0, 1)
|
309 |
for aluno, acertos in self.stats['top_performers']:
|
310 |
pdf.cell(0, 7, f"• {aluno}: {acertos:.0f} acertos", 0, 1)
|
311 |
|
312 |
pdf.ln(3)
|
313 |
+
pdf.cell(0, 7, "Maior Eficiência:", 0, 1)
|
314 |
for aluno, eficiencia, acertos in self.stats['most_efficient']:
|
315 |
pdf.cell(0, 7, f"• {aluno}: {eficiencia:.1f} acertos/hora ({acertos:.0f} acertos totais)", 0, 1)
|
316 |
|
|
|
331 |
pdf.set_font('Arial', '', 11)
|
332 |
pdf.multi_cell(0, 6, """
|
333 |
Este gráfico ilustra como os alunos estão distribuídos entre os três níveis de desempenho.
|
334 |
+
- Verde: Alunos no nível Avançado - demonstram excelente compreensão
|
335 |
+
- Amarelo: Alunos no nível Intermediário - bom progresso com espaço para melhorias
|
336 |
+
- Vermelho: Alunos que Necessitam Atenção - requerem suporte adicional
|
337 |
""")
|
338 |
|
339 |
elif i == 1:
|
|
|
342 |
pdf.multi_cell(0, 6, """
|
343 |
Destaca os dez alunos com maior número de acertos absolutos.
|
344 |
Este ranking permite:
|
345 |
+
- Identificar exemplos de sucesso na turma
|
346 |
+
- Reconhecer diferentes níveis de excelência
|
347 |
+
- Estabelecer metas realistas para os demais alunos
|
348 |
""")
|
349 |
|
350 |
elif i == 2:
|
|
|
353 |
pdf.multi_cell(0, 6, """
|
354 |
Mostra a relação entre tempo dedicado e número de acertos.
|
355 |
Pontos importantes:
|
356 |
+
- Cores indicam o nível de cada aluno
|
357 |
+
- Posição vertical mostra o número de acertos
|
358 |
+
- Posição horizontal indica o tempo total dedicado
|
359 |
+
- Dispersão dos pontos revela diferentes padrões de estudo
|
360 |
""")
|
361 |
|
362 |
elif i == 3:
|
|
|
365 |
pdf.multi_cell(0, 6, """
|
366 |
Analisa se mais tarefas realizadas resultam em melhor desempenho.
|
367 |
A linha de tendência (tracejada) indica:
|
368 |
+
- Correlação entre quantidade de tarefas e acertos
|
369 |
+
- Expectativa média de progresso
|
370 |
+
- Alunos acima da linha superam a expectativa da turma
|
371 |
""")
|
372 |
|
373 |
# Detalhamento por Nível
|
|
|
421 |
Com base na análise dos dados, recomenda-se:
|
422 |
|
423 |
1. Ações Imediatas:
|
424 |
+
- Implementar monitoria com alunos do nível Avançado
|
425 |
+
- Realizar reforço focado nos {percent_necessita_atencao:.1f}% que necessitam atenção
|
426 |
+
- Desenvolver planos de estudo personalizados
|
427 |
|
428 |
2. Melhorias no Processo:
|
429 |
+
- Acompanhamento individualizado dos alunos com baixo desempenho
|
430 |
+
- Feedback regular sobre o progresso
|
431 |
+
- Atividades extras para alunos com alta eficiência
|
432 |
|
433 |
3. Próximos Passos:
|
434 |
+
- Compartilhar resultados individuais
|
435 |
+
- Agendar sessões de reforço
|
436 |
+
- Reconhecer publicamente bons desempenhos
|
437 |
+
- Estabelecer metas claras de melhoria
|
438 |
"""
|
439 |
pdf.multi_cell(0, 7, recom_text)
|
440 |
|