@if ($graficaTipo === 'conteo_total')
🔢
Total de respuestas
{{ $total }}
@elseif ($graficaTipo === 'uma' && isset($graficasUMA[$item['id']]))
{{-- Gráficos de especialidad y semestre --}}
@foreach (['c_codesp' => 'Especialidad', 'semestre' => 'Semestre'] as $clave => $titulo)
@php
$datos = $graficasUMA[$item['id']][$clave] ?? [];
arsort($datos);
$graficoId = "grafico_{$preguntaId}_{$clave}";
@endphp
@endforeach
{{-- Gráfico de EDAD agrupado en rangos --}}
@php
$edades = $graficasUMA[$item['id']]['edad'] ?? [];
$bloquesEdad = ['15-25' => 0, '26-35' => 0, '36-45' => 0, '46+' => 0];
foreach ($edades as $valor => $cantidad) {
$edad = intval($valor);
if ($edad <= 25) $bloquesEdad['15-25'] += $cantidad;
elseif ($edad <= 35) $bloquesEdad['26-35'] += $cantidad;
elseif ($edad <= 45) $bloquesEdad['36-45'] += $cantidad;
else $bloquesEdad['46+'] += $cantidad;
}
$graficoId = "grafico_{$preguntaId}_edad";
@endphp
{{-- Gráfico de SEXO --}}
@php
$datosSexo = $graficasUMA[$item['id']]['sexo'] ?? [];
arsort($datosSexo);
$graficoId = "grafico_{$preguntaId}_sexo";
@endphp
{{-- fin grid de gráficos UMA --}}
@elseif (in_array($graficaTipo, ['barra', 'barra_horizontal']))
@php
$topRespuestas = array_slice($respuestas, 0, 15);
$datosGrafico = [
'id' => "grafico_{$preguntaId}",
'labels' => array_column($topRespuestas, 0),
'valores' => array_column($topRespuestas, 1),
'total' => max($totalRespondieron, 1),
'tipo' => $graficaTipo
];
$claseGrafico = $graficaTipo === 'barra_horizontal' ? 'grafico-horizontal' : 'grafico-vertical';
@endphp
@elseif ($graficaTipo === 'torta')
@php
$topRespuestas = array_slice($respuestas, 0, 15);
$datosGrafico = [
'id' => "grafico_{$preguntaId}",
'labels' => array_column($topRespuestas, 0),
'valores' => array_column($topRespuestas, 1),
'total' => max($totalRespondieron, 1),
'tipo' => 'torta'
];
@endphp
@elseif ($graficaTipo === 'radar')
@php
$topRespuestas = array_slice($respuestas, 0, 15);
$datosGrafico = [
'id' => "grafico_{$preguntaId}",
'labels' => array_column($topRespuestas, 0),
'valores' => array_column($topRespuestas, 1),
'total' => max($totalRespondieron, 1),
'tipo' => 'radar'
];
@endphp
@elseif ($graficaTipo === 'embudo')
@php
$topRespuestas = array_slice($respuestas, 0, 15);
$datosGrafico = [
'id' => "grafico_{$preguntaId}",
'labels' => array_column($topRespuestas, 0),
'valores' => array_column($topRespuestas, 1),
'total' => max($totalRespondieron, 1),
'tipo' => 'embudo'
];
@endphp
@elseif ($graficaTipo === 'nube_palabras')
@php
$topRespuestas = array_slice($respuestas, 0, 50);
$datosGrafico = [
'id' => "grafico_{$preguntaId}",
'labels' => array_column($topRespuestas, 0),
'valores' => array_column($topRespuestas, 1),
'total' => max($totalRespondieron, 1),
'tipo' => 'nube_palabras'
];
@endphp
@else
⚠️ Gráfico no asignado
@endif