Dominando la Visualización de Datos en MATLAB

  1. Fundamentos de los Sistemas de Coordenadas

En el entorno de MATLAB, la representación gráfica se estructura principalmente sobre tres sistemas de coordenadas matemáticas:

  • Cartesiano (Rectangular): Utiliza ejes ortogonales (X, Y, Z) para definir posiciones en el espacio.
  • Polar: Define puntos en un plano mediante un ángulo y una distancia radial desde el origen.
  • Esférico: Extensión tridimensional del sistema polar, utilizando radios y dos ángulos.
  1. Configuración de Ejes y Escalas

La generación de datos vectoriales y la personalización de los ejes son pasos fundamentales. A continuación, se demuestra cómo definir dominios y ajustar las proipedades visuales de los ejes.


% Generación de datos vectoriales
vector_t = linspace(-5, 5, 300);
senal_y = sin(3 * vector_t) ./ exp(0.5 * vector_t);

% Configuración de etiquetas de ejes
xlabel('Tiempo (s)');
ylabel('Amplitud (V)');

% Ajuste de límites visuales
xlim([-6 6]);
ylim([-20 20]);

% Personalización de marcas (ticks) y sus etiquetas
xticks(-5:1:5);
yticks(-20:5:20);
xticklabels({'-5s', '-4s', '-3s', '-2s', '-1s', '0', '1s', '2s', '3s', '4s', '5s'});
yticklabels({'-20V', '-15V', '-10V', '-5V', '0V', '5V', '10V', '15V', '20V'});

  1. Tipología de Gráficos en MATLAB

MATLAB ofrece una amplia gama de funciones nativas para representar datos en dos y tres dimensiones.

  • 2D: plot (líneas), scatter (dispersión), bar (barras), pie (circular).
  • 3D: plot3 (líneas 3D), mesh (malla), surf (superficie), scatter3 (dispersión 3D).

Ejemplo de sintaxis para gráficos tridimensionales:


% Sintaxis básica para líneas en 3D
plot3(X, Y, Z, 'LineStyle', '--', 'Color', 'r', 'LineWidth', 2);

% Otras representaciones tridimensionales comunes
bar3(Z);       % Barras en 3D
surf(X, Y, Z); % Superficie coloreada

  1. Control de Diseño y Anotaciones

Para crear figuras complejas, es necesario manipular el diseño de la ventana gráfica y añadir elementos descriptivos.


% Creación de múltiples subgráficos
subplot(2, 2, 1); polarplot(theta, rho);
subplot(2, 2, 2); plot(x, y);

% Control de la visualización
grid on;          % Activar rejilla
hold on;          % Mantener gráfico actual para superponer datos
axis equal;       % Igualar la escala de los ejes

% Elementos de anotación
title('Análisis de Señales');
legend('Señal Original', 'Señal Filtrada', 'Location', 'best');
text(2, 5, 'Punto de Interés', 'FontSize', 12);

  1. Catálogo de Funciones de Visualización

A continuación, se clasifican las funcinoes nativas de MATLAB para la manipulación de ejes y tipos de gráficos, adaptando conceptos generales de visualización al entorno específico de MATLAB:

Gráficos Básicos y Estadísticos


% Líneas y dispersión
plot(X, Y);        % Gráfico de líneas
scatter(X, Y);     % Gráfico de dispersión
stairs(X, Y);      % Gráfico de escalones
errorbar(X, Y, E); % Gráfico con barras de error

% Distribuciones y categorías
bar(X, Y);         % Gráfico de barras verticales
barh(X, Y);        % Gráfico de barras horizontales
pie(X);            % Gráfico circular
histogram(X);      % Histograma

Escalas Logarítmicas y Especiales


loglog(X, Y);      % Escala logarítmica en ambos ejes
semilogx(X, Y);    % Escala logarítmica en el eje X
semilogy(X, Y);    % Escala logarítmica en el eje Y
area(X, Y);        % Gráfico de área rellena
fill(X, Y, 'c');   % Polígono relleno

Manipulación de Propiedades de Ejes (Axes)


% Límites y dirección
xlim([min max]);   % Establecer límites del eje X
ylim([min max]);   % Establecer límites del eje Y
set(gca, 'XDir', 'reverse'); % Invertir dirección del eje X

% Etiquetas y marcas
xlabel('Texto X');
set(gca, 'XTick', 0:10:100);
set(gca, 'XTickLabel', {'A', 'B', 'C'});

% Rejilla y fondo
grid on;
set(gca, 'Color', 'w'); % Fondo blanco
set(gca, 'GridLineStyle', '--');

  1. Ejemplo Integrado: Trayectorias Paramétricas 3D

El siguiente script demusetra la creación de un gráfico tridimensional complejo, incluyendo múltiples curvas, personalización de ejes y anotaciones de texto en el espacio 3D.


% Definición del parámetro temporal
t = 0:pi/400:2*pi;

% Cálculo de coordenadas para la primera trayectoria (Espiral externa)
x1 = sin(t) .* cos(8*t);
y1 = sin(t) .* sin(8*t);
z1 = cos(t);

% Cálculo de coordenadas para la segunda trayectoria (Espiral interna)
x2 = sin(t) .* cos(12*t);
y2 = sin(t) .* sin(12*t);
z2 = cos(t);

% Inicialización de la figura
figure('Name', 'Visualizacion 3D', 'NumberTitle', 'off', 'Color', 'w');

% Trazado de ambas curvas en el mismo espacio
plot3(x1, y1, z1, 'b-', 'LineWidth', 1.5);
hold on;
plot3(x2, y2, z2, 'r--', 'LineWidth', 1.5);

% Configuración visual general
grid on;
axis equal;
xlim([-1.2 1.2]); ylim([-1.2 1.2]); zlim([-1.2 1.2]);

% Personalización de marcas en los tres ejes
xticks(-1:0.4:1); yticks(-1:0.4:1); zticks(-1:0.4:1);
xticklabels({'X-1', 'X-0.6', 'X-0.2', 'X0.2', 'X0.6', 'X1'});
yticklabels({'Y-1', 'Y-0.6', 'Y-0.2', 'Y0.2', 'Y0.6', 'Y1'});
zticklabels({'Z-1', 'Z-0.6', 'Z-0.2', 'Z0.2', 'Z0.6', 'Z1'});

% Etiquetas de los ejes principales
xlabel('Eje de Frecuencia');
ylabel('Eje de Amplitud');
zlabel('Eje de Fase');
title('Diagrama de Constelación Tridimensional');

% Inserción de anotaciones de texto en coordenadas específicas
% Anotación 1
text(0.8, -0.8, -0.5, {'\leftarrow Componente Alfa:', 'Modulacion QAM'}, 'FontSize', 10, 'Color', 'b');
% Anotación 2
text(0.8, -0.8, 0.0, {'\leftarrow Componente Beta:', 'Filtro paso bajo'}, 'FontSize', 10, 'Color', 'r');
% Anotación 3
text(0.8, -0.8, 0.5, {'\leftarrow Componente Gamma:', 'Ecualizacion'}, 'FontSize', 10, 'Color', 'k');

hold off;

Etiquetas: matlab visualizacion-de-datos Gráficos-3D Plot3 Manejo-de-Ejes

Publicado el 6-27 18:11