Documentaciónbarras_apiladas(curvas, graf, archivo)

barras_apiladas(curvas,graf,archivo)\texttt{barras\_apiladas}(curvas, graf, archivo)

Nombre

barras_apiladas - Construye un grafico de barras apiladas a partir de varias series.

Sinopsis

ok = graficos.barras_apiladas(curvas, graf, archivo)

Descripcion

Recibe varias series que comparten el mismo eje X y acumula sus valores Y para mostrar composicion por categoria.

Formato tipico:

ejemplo.blox
TABLA curvas, graf

graf = { titulo = "Composicion de ingresos", x = "Trimestres", y = "Ingresos (miles USD)" }
curvas[1] = { X = xs, Y = norte,  nombre = "Norte",  color = "azul" }
curvas[2] = { X = xs, Y = centro, nombre = "Centro", color = "verde" }
curvas[3] = { X = xs, Y = sur,    nombre = "Sur",    color = "rojo" }

Comportamiento

  • Valida que todas las series tengan el mismo numero de puntos y el mismo vector X.
  • Construye acumulados en Y para apilar cada componente.
  • Usa graficos.graficar_trayectorias() como motor de salida.

Funciones API relacionadas

  • graficos.barras_agrupadas()
  • graficos.boxplot()
  • graficos.boxplots()
  • graficos.histograma()
  • graficos.graficar_sturges()

Parámetros

ParámetroTipoDescripción
curvasTABLATabla de series de barras. Cada registro debe tener X, Y y opcionalmente nombre, color y bar_width.
grafTABLATabla de configuracion del grafico. Puede incluir titulo, x, y, etiquetas y leyenda. leyenda puede indicarse como un LOGICO o como una subconfiguracion con mostrar.
archivoSTRINGNombre o ruta del archivo PNG de salida.

Valor de retorno

VOID - No retorna valor. Genera el grafico y escribe el archivo PNG indicado.

Ejemplo

ejemplo.blox
// ======================================================
// ESTADISTICA - EJERCICIO 1
// Barras apiladas
//
// En una encuesta, los estudiantes se clasifican por nivel academico.
// En cada nivel se registra cuantos aprobaron, regularizaron o desaprobaron.
//
// total_estudiantes = aprobaron + regularizaron + desaprobaron
//
// Se pide representar la composicion de cada nivel academico.
// ======================================================

INCLUIR "graficos.api"
INCLUIR "vectores.api"

FUNCION PRINCIPAL
INICIO "Estadistica - Barras apiladas"

    NUMERICO niveles
    niveles = 4

    VECTOR xs[niveles]
    VECTOR aprobaron[niveles]
    VECTOR regularizaron[niveles]
    VECTOR desaprobaron[niveles]

    TABLA curvas
    STRING archivo
    NUMERICO ancho_barra

    xs            = [1, 2, 3, 4]
    aprobaron     = [30, 25, 35, 28]
    regularizaron = [10, 15, 12, 18]
    desaprobaron  = [5, 8, 6, 10]

    ancho_barra = 0.75

    archivo = "PROG1000 - ESTADISTICAS - GRAFICO - BAR - barras_apiladas().png"

    curvas[1] = {
        X = xs,
        Y = aprobaron,
        nombre = "aprobaron",
        color = "verde",
        bar_width = ancho_barra
    }

    curvas[2] = {
        X = xs,
        Y = regularizaron,
        nombre = "regularizaron",
        color = "azul",
        bar_width = ancho_barra
    }

    curvas[3] = {
        X = xs,
        Y = desaprobaron,
        nombre = "desaprobaron",
        color = "rojo",
        bar_width = ancho_barra
    }

    TABLA graf

    graf = {
        titulo = "ESTADISTICA - Resultado academico por nivel",
        x = "Nivel",
        y = "Resultado (puntos/100)"
    }

    graficos.barras_apiladas(curvas, graf, archivo)

FINAL