En este tema, aprenderemos a crear y personalizar gráficos 2D en MATLAB. Los gráficos 2D son fundamentales para visualizar datos y resultados de manera efectiva. MATLAB ofrece una amplia gama de funciones para crear gráficos 2D, desde gráficos de líneas simples hasta gráficos de dispersión y gráficos de barras.
Contenido
Creación de Gráficos de Líneas
Los gráficos de líneas son una de las formas más comunes de visualizar datos en MATLAB. La función plot
se utiliza para crear gráficos de líneas.
Ejemplo Básico
% Datos de ejemplo x = 0:0.1:10; y = sin(x); % Crear un gráfico de líneas figure; plot(x, y); title('Gráfico de Líneas de y = sin(x)'); xlabel('x'); ylabel('y'); grid on;
Explicación
x = 0:0.1:10;
: Crea un vectorx
que va de 0 a 10 con incrementos de 0.1.y = sin(x);
: Calcula el seno de cada valor enx
.figure;
: Abre una nueva ventana de figura.plot(x, y);
: Crea un gráfico de líneas dey
contrax
.title
,xlabel
,ylabel
: Añaden título y etiquetas a los ejes.grid on;
: Activa la cuadrícula en el gráfico.
Gráficos de Dispersión
Los gráficos de dispersión se utilizan para visualizar la relación entre dos conjuntos de datos. La función scatter
se utiliza para crear gráficos de dispersión.
Ejemplo Básico
% Datos de ejemplo x = randn(1, 100); y = randn(1, 100); % Crear un gráfico de dispersión figure; scatter(x, y); title('Gráfico de Dispersión'); xlabel('x'); ylabel('y'); grid on;
Explicación
x = randn(1, 100);
: Genera 100 números aleatorios con distribución normal parax
.y = randn(1, 100);
: Genera 100 números aleatorios con distribución normal paray
.scatter(x, y);
: Crea un gráfico de dispersión dey
contrax
.
Gráficos de Barras
Los gráficos de barras son útiles para comparar diferentes categorías de datos. La función bar
se utiliza para crear gráficos de barras.
Ejemplo Básico
% Datos de ejemplo categories = {'A', 'B', 'C', 'D'}; values = [4, 7, 1, 8]; % Crear un gráfico de barras figure; bar(values); set(gca, 'XTickLabel', categories); title('Gráfico de Barras'); xlabel('Categorías'); ylabel('Valores'); grid on;
Explicación
categories = {'A', 'B', 'C', 'D'};
: Define las categorías.values = [4, 7, 1, 8];
: Define los valores correspondientes a cada categoría.bar(values);
: Crea un gráfico de barras.set(gca, 'XTickLabel', categories);
: Establece las etiquetas de las categorías en el eje x.
Gráficos de Área
Los gráficos de área son similares a los gráficos de líneas, pero el área bajo la línea se rellena. La función area
se utiliza para crear gráficos de área.
Ejemplo Básico
% Datos de ejemplo x = 0:0.1:10; y = sin(x); % Crear un gráfico de área figure; area(x, y); title('Gráfico de Área de y = sin(x)'); xlabel('x'); ylabel('y'); grid on;
Explicación
area(x, y);
: Crea un gráfico de área dey
contrax
.
Personalización de Gráficos
MATLAB permite personalizar los gráficos de muchas maneras, incluyendo colores, estilos de línea, marcadores y más.
Ejemplo de Personalización
% Datos de ejemplo x = 0:0.1:10; y1 = sin(x); y2 = cos(x); % Crear un gráfico de líneas con personalización figure; plot(x, y1, '-r', 'LineWidth', 2); % Línea roja, grosor 2 hold on; plot(x, y2, '--b', 'LineWidth', 2); % Línea azul discontinua, grosor 2 title('Gráfico de Líneas Personalizado'); xlabel('x'); ylabel('y'); legend('sin(x)', 'cos(x)'); grid on;
Explicación
plot(x, y1, '-r', 'LineWidth', 2);
: Crea una línea roja continua con grosor 2.plot(x, y2, '--b', 'LineWidth', 2);
: Crea una línea azul discontinua con grosor 2.legend('sin(x)', 'cos(x)');
: Añade una leyenda al gráfico.
Ejercicios Prácticos
Ejercicio 1
Crea un gráfico de líneas para la función y = cos(x)
en el intervalo de 0 a 2π. Añade título, etiquetas a los ejes y una cuadrícula.
Solución
% Datos de ejemplo x = 0:0.1:2*pi; y = cos(x); % Crear un gráfico de líneas figure; plot(x, y); title('Gráfico de Líneas de y = cos(x)'); xlabel('x'); ylabel('y'); grid on;
Ejercicio 2
Crea un gráfico de dispersión para dos conjuntos de datos aleatorios de tamaño 50. Personaliza el gráfico para que los puntos sean de color verde y tengan un tamaño de 50.
Solución
% Datos de ejemplo x = randn(1, 50); y = randn(1, 50); % Crear un gráfico de dispersión figure; scatter(x, y, 50, 'g', 'filled'); title('Gráfico de Dispersión Personalizado'); xlabel('x'); ylabel('y'); grid on;
Ejercicio 3
Crea un gráfico de barras para las categorías {'E', 'F', 'G', 'H'} con valores [3, 6, 2, 5]. Añade título, etiquetas a los ejes y una cuadrícula.
Solución
% Datos de ejemplo categories = {'E', 'F', 'G', 'H'}; values = [3, 6, 2, 5]; % Crear un gráfico de barras figure; bar(values); set(gca, 'XTickLabel', categories); title('Gráfico de Barras'); xlabel('Categorías'); ylabel('Valores'); grid on;
Conclusión
En esta sección, hemos aprendido a crear y personalizar diferentes tipos de gráficos 2D en MATLAB, incluyendo gráficos de líneas, gráficos de dispersión, gráficos de barras y gráficos de área. También hemos visto cómo personalizar estos gráficos para mejorar su presentación. Los ejercicios prácticos proporcionados te ayudarán a reforzar los conceptos aprendidos. En la siguiente sección, exploraremos gráficos 3D y cómo utilizarlos para visualizar datos más complejos.
Curso de Programación en MATLAB
Módulo 1: Introducción a MATLAB
- Comenzando con MATLAB
- Interfaz y Entorno de MATLAB
- Comandos Básicos y Sintaxis
- Variables y Tipos de Datos
- Operaciones y Funciones Básicas
Módulo 2: Vectores y Matrices
- Creación de Vectores y Matrices
- Operaciones con Matrices
- Indexación y Segmentación
- Funciones de Matrices
- Álgebra Lineal en MATLAB
Módulo 3: Estructuras de Programación
- Flujo de Control: if, else, switch
- Bucles: for, while
- Funciones: Definición y Alcance
- Scripts vs. Funciones
- Depuración y Manejo de Errores
Módulo 4: Visualización de Datos
- Conceptos Básicos de Gráficos
- Gráficos 2D
- Gráficos 3D
- Personalización de Gráficos
- Técnicas Avanzadas de Gráficos
Módulo 5: Análisis de Datos y Estadísticas
- Importación y Exportación de Datos
- Estadísticas Descriptivas
- Preprocesamiento de Datos
- Análisis de Regresión
- Pruebas Estadísticas
Módulo 6: Temas Avanzados
- Entrada/Salida de Archivos
- Manejo de Grandes Conjuntos de Datos
- Técnicas de Optimización
- Conceptos Básicos de Simulink
- Computación Paralela