Guía de Prácticas - Unidad 4

Software de Graficación y Visualización de Datos Científicos

Informática General - Bioquímica Clínica. Dr. Danilo Ceschin


Introducción y Objetivos

La Importancia de la Visualización en Ciencias Biomédicas

En el laboratorio clínico, un gráfico bien construido puede revelar patrones, tendencias y relaciones que permanecen ocultas en tablas de números. La visualización de datos no es solo una herramienta de presentación: es una parte fundamental del análisis científico que permite:

  • 🔍 Detectar valores atípicos y errores en los datos
  • 📊 Identificar correlaciones entre variables bioquímicas
  • 📈 Comunicar hallazgos de forma clara y profesional
  • Validar hipótesis mediante análisis visual
  • 📑 Cumplir estándares de publicación científica

En esta práctica trabajaremos con BD_pacientes.csv, que contiene:

  • 103 pacientes con perfiles lipídicos completos
  • Variables: COL, HDL, LDL, TG, ApoA, ApoB, Lpa, Glucosa, Insulina, HbGlc, PCR
  • Clasificación Riesgo: Normal, Alto

Objetivos de Aprendizaje (2 horas)

Al finalizar esta práctica, serán capaces de:

Competencias Técnicas:

  1. Seleccionar el tipo de gráfico apropiado según el tipo de datos
  2. Crear gráficos científicos en LibreOffice Calc
  3. Personalizar títulos, ejes, leyendas y formato profesional
  4. Construir gráficos de dispersión con líneas de tendencia
  5. Interpretar ecuaciones de regresión y coeficientes R²

Competencias Aplicadas:

  1. Analizar correlaciones entre parámetros bioquímicos
  2. Preparar figuras para informes y publicaciones científicas
  3. Conocer herramientas alternativas (gnuplot, R) para graficación avanzada

Estructura de la Práctica (ideal 😉)

⏱️ DISTRIBUCIÓN DEL TIEMPO (120 minutos)
├── 15 min → Teoría: Tipos de gráficos y criterios de selección
├── 30 min → Práctica 1: Gráficos básicos (columnas, barras, torta)
├── 35 min → Práctica 2: Dispersión, correlación y regresión
├── 20 min → Práctica 3: Personalización profesional
├── 15 min → Introducción a herramientas avanzadas
└── 05 min → Conclusiones y cierre

Tipos de Gráficos para Datos Científicos

Criterios para Seleccionar el Gráfico Apropiado

La elección del tipo de gráfico depende de:

  1. Tipo de variables (categóricas vs. numéricas)
  2. Objetivo del análisis (comparar, correlacionar, mostrar tendencias)
  3. Cantidad de datos (pocos puntos vs. muchos puntos)
  4. Audiencia (técnica vs. divulgación)

Gráficos Más Utilizados en Bioquímica Clínica

1. Gráfico de Columnas/Barras

Uso: Comparar valores entre categorías

Cuándo usar:

  • Comparar promedios entre grupos (Normal, Alto)
  • Mostrar frecuencias o distribuciones categóricas
  • Comparar resultados de diferentes métodos analíticos

Ventajas: Fácil comparación visual, intuitivo

Limitaciones: No muestra dispersión de datos, solo promedios


2. Gráfico de Dispersión (Scatter Plot)

Uso: Mostrar relación entre dos variables numéricas

Cuándo usar:

  • Analizar correlación entre parámetros (ej: COL vs LDL)
  • Detectar valores atípicos
  • Validar métodos analíticos (comparación de métodos)
  • Construir curvas de calibración

Ventajas: Muestra toda la variabilidad, detecta patrones no lineales

Limitaciones: Requiere más interpretación


3. Gráfico de Líneas

Uso: Mostrar tendencias temporales o secuencias ordenadas

Cuándo usar:

  • Control de calidad interno (gráficos de Levey-Jennings)
  • Seguimiento de pacientes a lo largo del tiempo
  • Curvas de reacción enzimática
  • Series temporales de laboratorio

Ventajas: Excelente para visualizar cambios temporales

Limitaciones: Datos deben estar ordenados lógicamente


4. Histograma

Uso: Mostrar distribución de frecuencias de una variable

Cuándo usar:

  • Verificar normalidad de datos
  • Analizar rangos de referencia poblacionales
  • Detectar subpoblaciones
  • Control de calidad de distribuciones

Ventajas: Muestra la distribución completa

Limitaciones: Depende del tamaño de intervalos (bins)


5. Box Plot (Diagrama de Caja)

Uso: Comparar distribuciones entre grupos

Cuándo usar:

  • Comparar dispersión entre grupos
  • Detectar valores atípicos
  • Mostrar mediana, cuartiles y rango
  • Análisis de control de calidad interensayo

Ventajas: Muy informativo, muestra dispersión y valores extremos Limitaciones: Menos intuitivo para audiencias no técnicas


Tabla Resumen: Tipo de Gráfico según el Análisis

Objetivo Variables Gráfico Recomendado Ejemplo Clínico
Comparar grupos 1 categórica + 1 numérica Columnas/Barras COL promedio por grupo
Correlación 2 numéricas Dispersión COL vs LDL
Tendencia temporal Tiempo + 1 numérica Líneas Control de calidad
Distribución 1 numérica Histograma Distribución de glucosa
Comparar dispersiones 1 categórica + 1 numérica Box Plot HDL por sexo
Proporciones 1 categórica Torta % de pacientes por grupo
Curva de calibración Concentración + Absorbancia Dispersión + Línea Método colorimétrico

Creación de Gráficos en LibreOffice Calc

Práctica 1: Gráficos Básicos con BD_pacientes

Preparación de Datos

Paso 1: Abrir BD_pacientes.csv en LibreOffice Calc

Archivo → Abrir → Seleccionar BD_pacientes.csv
En el diálogo de importación:
- Separado por: Coma
- Conjunto de caracteres: UTF-8

Paso 2: Verificar la importación correcta

Deben aparecer columnas: - Paciente | Edad | COL | HDL | LDL | TG | ApoA | ApoB | Lpa | Glc | Insulin | HbGlc | PCR | Condicion


Ejercicio 1.1: Gráfico de Columnas - Colesterol Promedio por Grupo

Objetivo: Comparar los niveles promedio de colesterol entre los tres grupos de riesgo.

Paso 1: Calcular Promedios por Grupo

Crear una tabla resumen en celdas vacías (por ejemplo, en columnas O-P):

En O1: "Condicion"
En P1: "COL Promedio"

En O2: Normal
En O3: Alto  


En P2: =PROMEDIO.SI($N$2:$N$104;O2;$C$2:$C$104)
[Copiar fórmula a P3:P4]

Explicación de la fórmula:

  • PROMEDIO.SI(rango_criterio; criterio; rango_promedio)
  • Calcula el promedio de COL solo para pacientes que tienen la condición especificada

Paso 2: Seleccionar Datos

  • Seleccionar el rango O1:P4 (incluir encabezados)

Paso 3: Insertar Gráfico

Insertar → Gráfico

Asistente de gráficos - Paso 1:
✓ Tipo de gráfico: Columna
✓ Subtipo: Normal (primer icono)
→ Siguiente

Asistente de gráficos - Paso 2:
✓ Rango de datos: $O$1:$P$3
✓ Primera fila como etiqueta: SÍ
✓ Primera columna como etiqueta: SÍ
→ Siguiente

Asistente de gráficos - Paso 3:
✓ Deja las series de datos como están
→ Siguiente

Asistente de gráficos - Paso 4:
Título: "Colesterol Total por Grupo de Riesgo"
Subtítulo: "n=103 pacientes"
Eje X: "Grupo"
Eje Y: "Colesterol (mg/dL)"
→ Finalizar

Resultado Esperado:

Deberían ver tres columnas mostrando que:

  • Normal: ~160 mg/dL
  • Alto: ~205 mg/dL

Ejercicio 1.2: Gráfico de Barras Horizontales

Comparación de Parámetros Lipídicos

Objetivo: Visualizar múltiples parámetros promedio del grupo “Alto riesgo”.

Paso 1: Crear Tabla de Datos

En una nueva área (columnas R-S):

R1: "Parámetro"    S1: "Valor Promedio (mg/dL)"
R2: COL            S2: =PROMEDIO.SI($N$2:$N$104;"Alto";$C$2:$C$104)
R3: HDL            S3: =PROMEDIO.SI($N$2:$N$104;"Alto";$D$2:$D$104)
R4: LDL            S4: =PROMEDIO.SI($N$2:$N$104;"Alto";$E$2:$E$104)
R5: TG             S5: =PROMEDIO.SI($N$2:$N$104;"Alto";$F$2:$F$104)

Paso 2: Crear Gráfico de Barras

Seleccionar R1:S5
→ Insertar → Gráfico

Tipo: Barra (horizontal)
Título: "Perfil Lipídico Promedio - Grupo Alto Riesgo"
Eje X: "Concentración (mg/dL)"
Eje Y: (dejar vacío, ya están las etiquetas)

Ventaja de barras horizontales: Mejor legibilidad de nombres largos en el eje vertical.


Ejercicio 1.3: Gráfico Circular (Torta) - Distribución de Pacientes

Objetivo: Mostrar la proporción de pacientes en cada grupo.

Paso 1: Contar Pacientes por Grupo

En U1: "Condicion"    V1: "Cantidad"
En U2: Normal         V2: =CONTAR.SI($N$2:$N$104;U2)
En U3: Alto           V3: =CONTAR.SI($N$2:$N$104;U3)

Paso 2: Crear Gráfico Circular

Seleccionar U1:V3
→ Insertar → Gráfico
Tipo: Circular
Subtipo: Circular con explode (opcional: separar una porción)

Título: "Distribución de Pacientes por Grupo de Riesgo"
Mostrar leyenda: Sí (derecha)
Mostrar valores: Porcentaje

Paso 3: Agregar Etiquetas de Datos

Clic derecho en el gráfico → Insertar etiquetas de datos
Formato de etiquetas de datos:
✓ Mostrar categoría
✓ Mostrar porcentaje
○ Mostrar valor (opcional)

Interpretación: Deberían ver aproximadamente:

  • Normal: 20%
  • Alto: 80%

Personalización de Gráficos Científicos

Principios de Diseño para Publicaciones Científicas

Los gráficos científicos deben ser:

  1. Claros y concisos - Mensaje evidente sin explicación adicional
  2. Precisos - Escalas apropiadas, sin distorsiones
  3. Profesionales - Colores sobrios, fuentes legibles
  4. Autoexplicativos - Títulos, leyendas y ejes completos
  5. Accesibles - Colores distinguibles, suficiente contraste

Práctica 2: Personalización Profesional

Vamos a mejorar el gráfico de columnas del Ejercicio 1.1.

Paso 1: Acceder al Editor de Gráficos

Doble clic en el gráfico para entrar en modo de edición

Paso 2: Personalizar Título

Clic derecho en el título → Formato de título
Pestaña Fuente:
- Familia: Liberation Sans (o Arial)
- Tamaño: 14 pt
- Estilo: Negrita

Pestaña Efectos de fuente:
- Color: Negro

Título mejorado: “Colesterol Total por Grupo de Riesgo Cardiovascular”

Paso 3: Configurar Ejes

Eje Y (Valores):

Clic derecho en el eje Y → Formato de eje

Pestaña Escala:
- Mínimo: 0 (o 150 si quieren ampliar)
- Máximo: 300 (o Automático)
- Intervalo mayor: 50
✓ Mostrar líneas de cuadrícula

Pestaña Etiqueta:
- Mostrar etiquetas: Sí
- Orientación: Horizontal

Pestaña Números:
- Categoría: Número
- Decimales: 0

Eje X (Categorías):

Clic derecho en el eje X → Formato de eje
- Orientación: Horizontal (o 45° si hay muchas categorías)
- Fuente: Liberation Sans, 11 pt

Paso 4: Personalizar Colores de Series

Clic en una columna → Clic derecho → Formato de series de datos

Pestaña Área:
Grupo Normal:  #4472C4 (azul profesional)
Grupo Alto:    #C00000 (rojo)

Pestaña Borde:
- Estilo de línea: Continua
- Ancho: 0.5 pt
- Color: Gris oscuro (#404040)

Paleta de colores recomendada para ciencia:

  • Azul: #4472C4 (confianza, normalidad)
  • Naranja: #FFC000 (advertencia, precaución)
  • Rojo: #C00000 (alerta, riesgo)
  • Verde: #70AD47 (positivo, control)

Paso 5: Configurar Leyenda

Clic derecho en la leyenda → Formato de leyenda

Posición: Derecha (o Abajo según espacio)
Fuente: Liberation Sans, 10 pt
Fondo: Transparente

Paso 6: Área del Gráfico

Clic derecho en el fondo → Formato de área del gráfico

Pestaña Área:
- Color: Blanco (#FFFFFF)

Pestaña Bordes:
- Estilo: Sin línea (o línea fina gris)

Paso 7: Ajustar Cuadrícula

Clic derecho en líneas de cuadrícula → Formato de cuadrícula mayor

- Estilo: Punteada o discontinua
- Ancho: 0.25 pt
- Color: Gris claro (#D0D0D0)

Resultado Final:

El gráfico debe lucir limpio, profesional y listo para incluir en un informe científico.


Exportar Gráfico como Imagen

Para usar el gráfico en documentos o presentaciones:

Método 1 (recomendado):
1. Clic en el gráfico (sin entrar en modo edición)
2. Clic derecho → Exportar como imagen
3. Formato: PNG (para web/presentaciones) o SVG (vectorial)
4. Resolución: 300 dpi mínimo para publicaciones

Método 2:
1. Clic en el gráfico
2. Ctrl+C (copiar)
3. Pegar en otro documento (Word, LibreOffice Writer)

Formatos recomendados: - PNG: Presentaciones, web (300 dpi) - SVG: Publicaciones científicas (vectorial, escalable) - PDF: Informes profesionales (alta calidad)


Gráficos de Dispersión y Correlación

Teoría: Análisis de Correlación

La correlación mide la fuerza y dirección de la relación lineal entre dos variables.

Coeficiente de correlación de Pearson (r):

r = Σ[(Xi - X̄)(Yi - Ȳ)] / √[Σ(Xi - X̄)² · Σ(Yi - Ȳ)²]

Interpretación:
r = +1.00  →  Correlación positiva perfecta
r = +0.70  →  Correlación positiva fuerte
r = +0.50  →  Correlación positiva moderada
r = +0.30  →  Correlación positiva débil
r =  0.00  →  Sin correlación
r = -0.30  →  Correlación negativa débil
r = -1.00  →  Correlación negativa perfecta

Correlaciones esperadas en bioquímica clínica:

  • COL vs LDL: r ≈ +0.90 (muy fuerte)
  • HDL vs ApoA: r ≈ +0.85 (fuerte)
  • HDL vs TG: r ≈ -0.40 (negativa moderada)
  • Edad vs COL: r ≈ +0.40 (moderada)

Ejercicio 2.1: Gráfico de Dispersión - COL vs LDL

Objetivo: Visualizar la correlación entre colesterol total y LDL.

Paso 1: Seleccionar Datos

Seleccionar dos columnas:
- Columna C (COL) + Columna E (LDL)
- Rango: C1:C104 y E1:E104 (incluir encabezados)
- Mantener presionada la tecla Ctrl para selección múltiple

Paso 2: Insertar Gráfico de Dispersión

Insertar → Gráfico

Tipo: XY (Dispersión)
Subtipo: Solo puntos (primer icono)

Rango de datos:
✓ Series en columnas
✓ Primera fila como etiqueta

Configuración:
Título: "Correlación entre Colesterol Total y LDL"
Eje X: "Colesterol Total (mg/dL)"
Eje Y: "LDL-Colesterol (mg/dL)"

Paso 3: Personalizar Puntos

Clic derecho en los puntos → Formato de series de datos

Pestaña Línea:
- Estilo: Ninguno

Pestaña Símbolo:
- Símbolo: Círculo (●)
- Tamaño: 0.15 cm
- Color: #4472C4 (azul)
- Borde: Sí, gris oscuro, 0.3 pt

Interpretación visual: Deberían observar una correlación positiva clara (puntos alineados de abajo-izquierda a arriba-derecha).


Ejercicio 2.2: Gráfico de Dispersión con Grupos Diferenciados

Objetivo: Visualizar cómo se distribuyen los dos grupos de riesgo en la correlación COL-LDL.

Paso 1: Preparar Datos por Grupo

Necesitamos crear dos series separadas (una por grupo). En columnas vacías (por ejemplo, Y-AB):

Y1: "COL_Normal"    Z1: "LDL_Normal"
AA1: "COL_Alto "   AB1: "LDL_Alto"

Usar fórmulas para extraer datos por grupo:

En Y2: =SI($N2="Normal";$C2;NOD())
En Z2: =SI($N2="Normal";$E2;NOD())

En AA2: =SI($N2="Alto";$C2;NOD())
En AB2: =SI($N2="Alto";$E2;NOD())


[Copiar fórmulas hacia abajo hasta fila 104]

Nota: La función NOD() crea valores vacíos que no se graficarán. Si LibreOffice Calc está configurado en idioma inglés, la función es NA()

Paso 2: Crear Gráfico con Dos Series

Seleccionar Y1:AB104
Insertar → Gráfico → XY (Dispersión)

Se crearán automáticamente 2 series diferentes

Paso 3: Personalizar Cada Serie

Serie 1 (Normal):
- Color: #70AD47 (verde)
- Símbolo: Círculo ●
- Tamaño: 0.12 cm

Serie  (Alto):
- Color: #C00000 (rojo)
- Símbolo: Cuadrado ■
- Tamaño: 0.12 cm

Paso 4: Configurar Leyenda

Clic derecho en leyenda → Formato de leyenda
Posición: Abajo o derecha
Texto:
- Normal (n=21)
- Alto (n=82)

Interpretación: Deberían observar que los grupos se distribuyen a lo largo de la línea de correlación, con el grupo “Alto” en la zona de valores más elevados.


Ejercicio 2.3: Correlación Inversa - HDL vs TG

Objetivo: Visualizar una correlación negativa.

Paso 1: Crear Gráfico de Dispersión

Seleccionar:
- Columna D (HDL): Eje X
- Columna F (TG): Eje Y

Insertar → Gráfico XY
Título: "Relación Inversa entre HDL y Triglicéridos"
Eje X: "HDL-Colesterol (mg/dL)"
Eje Y: "Triglicéridos (mg/dL)"

Paso 2: Observar el Patrón

Interpretación: Los puntos deberían mostrar tendencia descendente (arriba-izquierda a abajo-derecha), indicando que: - HDL alto → TG bajos (protector) - HDL bajo → TG altos (riesgo)

Esto refleja una relación fisiopatológica importante en el síndrome metabólico.


Líneas de Tendencia y Regresión

Teoría: Regresión Lineal

La línea de tendencia es la recta que mejor ajusta a los datos, minimizando la distancia al cuadrado de todos los puntos (método de mínimos cuadrados).

Ecuación de la recta:

y = a + bx

Donde:
y = variable dependiente (LDL)
x = variable independiente (COL)
a = intersección (ordenada al origen)
b = pendiente (cambio en y por unidad de x)

Coeficiente de determinación (R²):

R² = proporción de varianza explicada por el modelo

R² = 1.00  →  Ajuste perfecto (100%)
R² = 0.90  →  Ajuste muy bueno (90%)
R² = 0.70  →  Ajuste moderado (70%)
R² = 0.30  →  Ajuste débil (30%)
R² = 0.00  →  Sin ajuste

Ejercicio 3.1: Agregar Línea de Tendencia

Vamos a agregar una línea de regresión al gráfico COL vs LDL.

Paso 1: Abrir el Gráfico en Modo Edición

Doble clic en el gráfico de dispersión COL vs LDL

Paso 2: Insertar Línea de Tendencia

Clic en los puntos de datos (serie)
→ Clic derecho → Insertar curva de tendencia

Tipo: Lineal
✓ Mostrar ecuación
✓ Mostrar coeficiente de determinación (R²)

Paso 3: Personalizar la Línea

Clic derecho en la línea de tendencia → Formato de curva de tendencia

Pestaña Línea:
- Color: Rojo o negro (#C00000)
- Ancho: 1.5 pt
- Estilo: Continua

Pestaña Ecuación:
Posición: Arriba a la izquierda (donde no tape puntos)
Fuente: 10 pt

Paso 4: Interpretar Resultados

Deberían ver algo como:

y = 0.85x - 20.5
R² = 0.92

Interpretación: - Pendiente (b = 0.85): Por cada 1 mg/dL de aumento en COL, el LDL aumenta 0.85 mg/dL - R² = 0.92: El 92% de la variabilidad del LDL se explica por el COL - Correlación muy fuerte: Lo esperado, ya que el LDL es el principal componente del colesterol total


Ejercicio 3.2: Línea de Tendencia para Datos No Lineales

No todos los datos biológicos siguen una relación lineal. A veces se necesitan modelos más complejos.

Caso: Curva de Calibración Hipotética

Imaginen que tienen una curva de calibración de un ensayo ELISA (no está en BD_pacientes, es un ejemplo):

Concentración (ng/mL)  |  Absorbancia (450 nm)
           0           |       0.05
          10           |       0.25
          50           |       0.80
         100           |       1.35
         200           |       1.70
         500           |       1.85

Paso 1: Ingresar Datos y Crear Gráfico

Crear tabla en una hoja nueva
Insertar → Gráfico XY (Dispersión)
Eje X: Concentración
Eje Y: Absorbancia

Paso 2: Probar Diferentes Modelos

Insertar curva de tendencia:

Opción 1: Lineal
- Funciona bien en rango medio
- Falla en extremos (saturación)

Opción 2: Logarítmica
- y = a · ln(x) + b
- Mejor para curvas de saturación

Opción 3: Polinómica (grado 2)
- y = a + bx + cx²
- Muy buena para curvas sigmoideas parciales

Comparar R² de cada modelo y elegir el mejor

Criterio de selección:

  1. R² más cercano a 1.00
  2. Validez biológica del modelo
  3. Simplicidad (evitar sobreajuste)

Ejercicio 3.3: Análisis de Residuos (Avanzado)

Los residuos son las distancias verticales entre los puntos observados y la línea de tendencia.

Paso 1: Calcular Residuos Manualmente

Después de obtener la ecuación de regresión (ejemplo: y = 0.85x - 20.5):

En columna nueva (ej: AG):
AG1: "LDL Predicho"
AG2: =0.85*C2-20.5

En columna AH:
AH1: "Residuo"
AH2: =E2-AG2  [LDL real - LDL predicho]

Copiar hacia abajo

Paso 2: Graficar Residuos

Crear gráfico XY:
Eje X: COL (C2:C104)
Eje Y: Residuos (AH2:AH104)

Agregar línea horizontal en y=0:
- Insertar → Forma → Línea horizontal

Interpretación de residuos:

  • Patrón aleatorio alrededor de 0: Buen ajuste lineal
  • Patrón curvo: Indica que relación no es lineal
  • Valores extremos: Outliers o puntos influyentes

Aplicación Clínica: Ecuación de Friedewald

La ecuación de Friedewald estima LDL a partir de otras variables:

LDL = COL - HDL - (TG/5)

(cuando TG < 400 mg/dL)

Ejercicio: Validar la Ecuación

1. Calcular LDL estimado:
   En columna AI: =C2-D2-(F2/5)

2. Comparar con LDL medido:
   Crear gráfico XY:
   Eje X: LDL medido (columna E)
   Eje Y: LDL estimado (columna AI)

3. Agregar línea de identidad (y=x):
   Insertar curva de tendencia
   Si pendiente ≈ 1 y R² ≈ 1 → Buena concordancia

4. Calcular sesgo:
   =PROMEDIO(AI2:AI104 - E2:E104)

Interpretación: Esta validación es importante antes de usar ecuaciones estimativas en la práctica clínica.


Herramientas Avanzadas de Graficación

Limitaciones de LibreOffice Calc para Gráficos Complejos

Calc es excelente para gráficos estándar, pero tiene limitaciones para: - Gráficos estadísticos avanzados (violin plots, heatmaps) - Análisis multivariado (PCA, clustering) - Gráficos animados o interactivos - Procesamiento de grandes volúmenes de datos (>100,000 puntos)

Para estos casos, existen herramientas especializadas de código abierto:


Introducción a gnuplot

gnuplot es un programa de línea de comandos para crear gráficos científicos de alta calidad.

Características:

  • ✅ Gratuito y multiplataforma
  • ✅ Gráficos vectoriales de publicación
  • ✅ Soporte para scripts reproducibles
  • ✅ Muy rápido para grandes datasets

Instalación:

Linux:

sudo apt-get install gnuplot

Windows: Descargar desde: http://www.gnuplot.info/

Ejemplo Básico:

Guardar BD_pacientes.csv y crear un script (grafico.gp):

# Script gnuplot para correlación COL-LDL
set terminal png size 800,600
set output 'col_vs_ldl.png'

set title "Correlación COL vs LDL"
set xlabel "Colesterol Total (mg/dL)"
set ylabel "LDL-Colesterol (mg/dL)"
set grid

set datafile separator ","
plot 'BD_pacientes.csv' using 3:5 with points pt 7 ps 0.5 lc rgb "blue" title "Pacientes", \
     x*0.85-20.5 with lines lw 2 lc rgb "red" title "Regresión"

Ejecutar:

gnuplot grafico.gp

Ventajas: Script completamente reproducible, ideal para análisis automatizados.


Introducción a R y ggplot2

R es un lenguaje de programación estadística con capacidades gráficas extraordinarias.

Instalación:

  1. Descargar R: https://cran.r-project.org/
  2. Instalar RStudio (IDE recomendado): https://posit.co/download/rstudio-desktop/

Paquetes Esenciales:

install.packages("ggplot2")    # Gráficos elegantes
install.packages("readr")      # Importar CSV
install.packages("dplyr")      # Manipulación de datos

Ejemplo: Gráfico de Dispersión con ggplot2

# Limpiar el entorno de trabajo: elimina todos los objetos cargados en la sesión
rm(list = ls())

# Liberar memoria no utilizada (garbage collection)
gc()

# Cargar las librerías necesarias
library(ggplot2)  # Para crear gráficos avanzados
library(readr)    # Para importar datos en formato CSV de forma eficiente

# Establecer el directorio de trabajo donde se encuentran los archivos de datos y donde se guardarán los resultados
setwd("/elegir/el/directorio/de/trabajo")

# Importar el archivo de datos en formato CSV
# El archivo contiene información de pacientes, incluyendo niveles de colesterol y su condición de riesgo
datos <- read_csv("BD_pacientes.csv")

# Crear un gráfico de dispersión que muestra la relación entre colesterol total y LDL,
# coloreado según la condición de riesgo del paciente
ggplot(datos, aes(x = `COL (mg/dL)`, y = `LDL (mg/dL)`, color = Condicion)) +
  # Añadir puntos al gráfico: tamaño 2 y transparencia (alpha) para mejorar la visualización de superposiciones
  geom_point(size = 2, alpha = 0.6) +
  # Añadir una línea de regresión lineal con intervalo de confianza sombreado (se = TRUE)
  geom_smooth(method = "lm", se = TRUE, color = "black") +
  # Etiquetas del gráfico: título, subtítulo y nombres de los ejes
  labs(
    title = "Correlación entre Colesterol Total y LDL",
    subtitle = "n = 103 pacientes",
    x = "Colesterol Total (mg/dL)",
    y = "LDL-Colesterol (mg/dL)",
    color = "Grupo de Riesgo"
  ) +
  # Definir manualmente los colores para cada categoría de riesgo:
  # - Normal: verde
  # - Alto: rojo
  scale_color_manual(values = c("Normal" = "#70AD47", 
                                "Alto" = "#C00000")) +
  # Usar un tema minimalista para un diseño limpio y profesional
  theme_minimal() +
  # Personalizar el tamaño y estilo del texto del título y los ejes
  theme(
    plot.title = element_text(size = 14, face = "bold"),
    axis.title = element_text(size = 11)
  )

# Guardar el gráfico generado como un archivo PNG de alta resolución (300 dpi)
# Dimensiones: 8 pulgadas de ancho por 6 de alto
ggsave("correlacion_col_ldl.png", width = 8, height = 6, dpi = 300)

Ventajas de R:

  • 📊 Gráficos estadísticos avanzados (boxplots, violin plots, heatmaps)
  • 🔬 Análisis estadístico integrado
  • 📈 Reproducibilidad científica
  • 🎨 Personalización ilimitada

Comparación de Herramientas

Característica LibreOffice Calc gnuplot R (ggplot2)
Curva de aprendizaje Baja Media Media-Alta
Interfaz GUI Comandos Comandos + GUI
Gráficos básicos ✅ Excelente ✅ Muy bueno ✅ Excelente
Gráficos estadísticos ⚠️ Limitado ✅ Bueno ✅ Excepcional
Personalización ⚠️ Limitada ✅ Alta ✅ Muy alta
Reproducibilidad ⚠️ Manual ✅ Scripts ✅ Scripts
Velocidad (big data) ❌ Lento ✅ Rápido ✅ Rápido
Costo Gratis Gratis Gratis
Uso en laboratorio ✅ Diario ⚠️ Ocasional ✅ Investigación

Recomendación:

  • Calc: Para análisis diarios y gráficos estándar
  • gnuplot: Para automatización y scripts reproducibles
  • R: Para investigación y análisis estadístico avanzado

Recursos para Aprender Más

gnuplot:

R y ggplot2:

Python (alternativa):

  • matplotlib y seaborn (librerías de visualización)
  • pandas (manipulación de datos)

Preparación de Figuras para Publicaciones Científicas

Estándares de Revistas Científicas

Las publicaciones biomédicas tienen requisitos estrictos para figuras:

Especificaciones Técnicas Comunes

RESOLUCIÓN
─────────────────────────────────────
Mínimo:     300 dpi (puntos por pulgada)
Óptimo:     600 dpi para gráficos de línea
Web:        150 dpi aceptable

FORMATO DE ARCHIVO
─────────────────────────────────────
Preferido:  TIFF, EPS (vectoriales)
Aceptado:   PDF, PNG de alta calidad
Evitar:     JPG (compresión con pérdida)

DIMENSIONES
─────────────────────────────────────
1 columna:  8-9 cm de ancho
2 columnas: 17-18 cm de ancho
Altura:     Máximo 20-24 cm

TIPOGRAFÍA
─────────────────────────────────────
Fuente:     Arial, Helvetica, o similar sans-serif
Tamaño:     6-8 pt (mínimo legible)
Etiquetas:  Debe ser legible al reducir a tamaño final

COLORES
─────────────────────────────────────
Modo:       RGB para digital, CMYK para impresión
Contraste:  Suficiente para impresión B&N
Accesible:  Distinguible para daltónicos

Lista de Verificación para Figuras Científicas

Antes de enviar un gráfico a publicación, verificar:

Contenido

  • ✅ Título claro y descriptivo
  • ✅ Ejes con etiquetas completas (variable + unidades)
  • ✅ Leyenda explicativa (si hay múltiples series)
  • ✅ Escala apropiada (sin distorsiones)
  • ✅ Líneas de error (SD, SEM, IC) cuando corresponda
  • ✅ Tamaño de muestra indicado (n=…)
  • ✅ Significancia estadística marcada (, , )

Formato

  • ✅ Fuente legible (≥6 pt al tamaño final)
  • ✅ Colores distinguibles en B&N
  • ✅ Símbolos diferenciables
  • ✅ Líneas de grosor adecuado (0.5-2 pt)
  • ✅ Resolución ≥300 dpi
  • ✅ Fondo blanco (sin texturas)
  • ✅ Sin bordes o sombras innecesarias

Estilo

  • ✅ Consistencia entre figuras (misma fuente, colores, estilo)
  • ✅ Simplicidad (eliminar elementos no esenciales)
  • ✅ Profesionalismo (sin efectos 3D innecesarios)

Errores Comunes a Evitar

❌ Error 1: Gráficos 3D Innecesarios

❌ Barras 3D con efectos de sombra
✅ Barras 2D planas y claras

Por qué: Los efectos 3D distorsionan la percepción de valores y se ven poco profesionales.

❌ Error 2: Demasiados Colores

❌ Usar 8 colores diferentes en un gráfico
✅ Usar 3-4 colores máximo, con significado claro

❌ Error 3: Ejes Sin Unidades

❌ Eje Y: "Concentración"
✅ Eje Y: "Concentración de Glucosa (mg/dL)"

❌ Error 4: Escalas Distorsionadas

❌ Eje Y que no empieza en 0 (para barras)
✅ Eje Y desde 0 o indicar claramente el corte

❌ Error 5: Baja Resolución

❌ Exportar a 72 dpi (resolución de pantalla)
✅ Exportar a 300+ dpi para impresión

❌ Error 6: Texto Ilegible

❌ Fuente 4 pt que desaparece al reducir
✅ Fuente ≥6 pt legible al tamaño final

Paletas de Colores Recomendadas

Para Publicaciones Científicas (safe)

Azul:      #4472C4  rgb(68, 114, 196)
Naranja:   #ED7D31  rgb(237, 125, 49)
Gris:      #A5A5A5  rgb(165, 165, 165)
Amarillo:  #FFC000  rgb(255, 192, 0)
Verde:     #70AD47  rgb(112, 173, 71)

Para Mapas de Calor (Colorblind-safe)

Viridis:   #440154 → #31688e → #35b779 → #fde724
           (morado → azul → verde → amarillo)

Herramientas Online:

Recursos Adicionales

Tutoriales Recomendados

📚 Visualización de Datos Científicos: - “Fundamentals of Data Visualization” - Claus Wilke (gratuito online) https://clauswilke.com/dataviz/

  • “The Visual Display of Quantitative Information” - Edward Tufte (Clásico sobre diseño de gráficos)

📊 Guías de Estilo: - Nature Figure Guidelines: https://www.nature.com/nature/for-authors/final-submission - Science Figure Preparation: https://www.science.org/content/page/instructions-preparing-initial-manuscript

Herramientas Complementarias

Procesamiento de Imágenes: - GIMP (gratuito): Alternativa a Adobe Photoshop para edición de gráficos https://www.gimp.org/

  • Inkscape (gratuito): Editor de gráficos vectoriales alternativo a Adobe Illustrator https://inkscape.org/

Comunidades y Foros


Resumen de Contenidos

En esta práctica de 2 horas, has aprendido a:

Seleccionar el tipo de gráfico apropiado según el tipo de datos y objetivo del análisis

Crear gráficos científicos en LibreOffice Calc (columnas, dispersión, líneas, torta)

Personalizar elementos clave (títulos, ejes, leyendas, colores)

Analizar correlaciones mediante gráficos de dispersión

Agregar líneas de tendencia e interpretar ecuaciones de regresión

Conocer herramientas avanzadas (gnuplot, R) para análisis más complejos

Preparar figuras de calidad publicable siguiendo estándares científicos

Aplicación Profesional Inmediata

En el laboratorio clínico:

  • Visualizar tendencias en control de calidad interno
  • Comparar métodos analíticos (gráficos de Bland-Altman)
  • Presentar resultados de validación de métodos
  • Comunicar hallazgos en reuniones clínicas

En investigación:

  • Figuras para trabajos finales de carrera
  • Posters científicos con gráficos profesionales
  • Publicaciones en revistas biomédicas
  • Análisis exploratorio de datos

Próximos Pasos

Para profundizar:

  1. Explorar R y ggplot2 para análisis estadístico más robusto
  2. Aprender gráficos estadísticos avanzados (violin plots, heatmaps, dendrogramas)
  3. Estudiar diseño de información para comunicación efectiva
  4. Practicar con datasets reales de sus propios experimentos

Recursos Finales

📖 Lectura Recomendada: - “Data Visualization: A Practical Introduction” - Kieran Healy - “Storytelling with Data” - Cole Nussbaumer Knaflic

🎓 Cursos Online (gratuitos): - DataCamp: Introduction to Data Visualization with ggplot2 - Coursera: Data Visualization with Python (alternativa)

💡 Consejo Final:

“El mejor gráfico es aquel que comunica la información de forma clara, honesta y hermosa. La visualización de datos no es solo una herramienta técnica, es un arte que combina ciencia, diseño y comunicación. Practiquen, experimenten, y nunca dejen de preguntarse: ¿Este gráfico cuenta la historia correcta?”


Agradecimientos y Créditos

  • Base de datos: BD_pacientes.csv - Datos anónimos con fines educativos
  • Software: LibreOffice Calc - The Document Foundation
  • Inspiración: Principios de Edward Tufte y Claus Wilke