Matlab

Cómo crear gráficos con ejes secundarios en MATLAB

El uso de ejes secundarios en los gráficos permite comparar la tendencia de datos con diferentes unidades o rangos de valores. Permitiendo visualizar más fácilmente la relación entre estos. En el caso de MATLAB, la creación de estos gráficos se puede conseguir mediante el uso de la función yyaxis para seleccionar el eje sobre el que se representan los datos. Facilitando así la superposición de dos conjuntos de datos. En esta entrada, se explicará cómo crear gráficos con ejes secundarios en MATLAB y personalizar opciones como los colores y las etiquetas.

Creación de un gráfico básico

Antes de poder crear un gráfico con un eje secundario en MATLAB es necesario crear un gráfico básico. Para superponer los datos en el segundo eje posteriormente. Supongamos que se dispone de dos conjuntos de datos que representan las temperaturas y la velocidad del viento registradas en un mismo periodo. Queriendo mostrar ambas series en un mismo gráfico. Pero, dado que las unidades de ambas series son diferentes, grados para la temperatura y km/h para la velocidad del viento, es necesario usar una secundario para la segunda serie.

El código básico para crear una gráfica básica en la que se muestra solo la temperatura es el que se muestra a continuación.

% Datos de ejemplo
tiempo = 1:10; % Tiempo en días
temperatura = [22, 23, 25, 24, 26, 28, 29, 30, 32, 33]; % Temperatura en grados Celsius
velocidad_viento = [10, 12, 14, 16, 13, 15, 17, 18, 20, 19]; % Velocidad del viento en km/h

% Crear la figura
figure;

% Graficar el primer conjunto de datos
plot(tiempo, temperatura, '-o');
xlabel('Tiempo (días)');
ylabel('Temperatura (°C)');
title('Temperatura y Velocidad del Viento');
grid on;
Grafica básica con la temperatura

En este código, se crea un gráfico con el tiempo en el eje x y la temperatura en el eje y, empleando la función plot() para dibujar la línea de la temperatura. A continuación se agregan etiquetas a los ejes, mediante las funciones xlabel() e ylabel(), y un título para mejorar la claridad del gráfico, para lo que se ha recurrido a la función title().

Agregar ejes secundarios en MATLAB

Ahora que ya se ha creado la gráfica básica con la temperatura, se puede usar la función yyaxis para indicar que las nuevas series se muestran en el eje secundario. Para lo que se debe llamar a la función seguido del eje (left para el primario o right para el secundario). En el siguiente ejemplo se puede ver cómo se crea una gráfica con las dos series.

% Activar el eje y izquierdo para la temperatura
yyaxis left
plot(tiempo, temperatura, '-o');
ylabel('Temperatura (°C)');

% Activar el eje y derecho para la velocidad del viento
yyaxis right
plot(tiempo, velocidad_viento, '-s');
ylabel('Velocidad del Viento (km/h)');
Grafica con la temperatura y velocidad del tiempo

En este ejemplo, antes de llamar a la función plot(), se usa yyaxis left para indicar que se use el eje izquierdo (primario) o yyaxis right para el derecho (secundario). MATLAB sabe que debe usar diferentes ejes y escalas para cada conjunto de datos. Como se puede ver en el resultado, yyaxis left se utiliza para la temperatura, y yyaxis right para la velocidad del viento.

Personalizar los colores y las etiquetas

Ahora ya se dispone de un gráfico con dos ejes, pero puede que las opciones por defecto no sean las que se desean. Para lo que se pueden cambiar múltiples opciones. Por ejemplo, en el siguiente ejemplo se personalizan los colores de las líneas y las etiquetas del eje para mejorar la legibilidad.

% Personalizar el color de la temperatura
yyaxis left
plot(tiempo, temperatura, '-o', 'Color', 'b');
ylabel('Temperatura (°C)');
ax = gca;
ax.YColor = 'b';

% Personalizar el color de la velocidad del viento
yyaxis right
plot(tiempo, velocidad_viento, '-s', 'Color', 'r');
ylabel('Velocidad del Viento (km/h)');
ax.YColor = 'r';
Cambio de los colores de los ejes para mejorar la visibilidad

Respecto al ejemplo anterior, se ha especificado que se usa el color azul para la temperatura y rojo para la velocidad del viento. Además, también se han ajustado los colores de las etiquetas de los ejes para que coincidan con las líneas del gráfico, lo que facilita la asociación visual.

Ajustes finales y mejorando la presentación

Finalmente, se pueden hacer ajustes adicionales como cambiar el estilo de línea y añadir una leyenda. Asegurando de este modo que los datos sean representados con claridad.

% Establecer el estilo de línea y marcadores
yyaxis left
plot(tiempo, temperatura, '-o', 'LineWidth', 1.5);
ylabel('Temperatura (°C)');
ax = gca;
ax.YColor = 'b';

yyaxis right
plot(tiempo, velocidad_viento, '-s', 'LineWidth', 1.5);
ylabel('Velocidad del Viento (km/h)');
ax.YColor = 'r';

% Añadir leyenda
legend('Temperatura', 'Velocidad del Viento', 'Location', 'northwest');
Ajustes finales

En este ejemplo final, se ha aumentado el grosor de las líneas para mejorar la visibilidad y agregado una leyenda para clarificar qué línea corresponde a qué conjunto de datos.

Conclusiones

Los gráficos con ejes secundarios en MATLAB son un recurso útil para representar datos con diferentes escalas de forma clara y efectiva. En esta entrada, se ha visto cómo crear un gráfico básico, añadir un eje secundario, personalizar colores y etiquetas, y realizar ajustes finales para una mejor presentación.

Estos gráficos son útiles en muchas ocasiones. Con la práctica se pueden adaptar los pasos de este tutorial para diferentes necesidades de análisis y visualización de datos.

Imagen de Artur Pawlak en Pixabay

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez

Recent Posts

Analytics Lane lanza ScoreFlow, un SaaS para construir y desplegar scorecards de crédito

En Analytics Lane seguimos evolucionando nuestras herramientas y damos un paso más con el lanzamiento…

3 días ago

DBSCAN y la selección de ε: teoría, intuición y aplicación práctica

Cuando hablamos de clustering, lo primero que viene a la mente suele ser k-means. Pero…

4 días ago

El bestiario de los indicadores económicos absurdos: El zoo patrio

Cualquier país desarrollado tiene sus propios indicadores folclóricos. España, por motivos que tienen mucho que…

1 semana ago

Por qué el banco te ofrece un 3% TAE y no es lo que parece

Entras a la web de tu banco. En la página principal, un banner llamativo: “Depósito…

2 semanas ago

Analytics Lane lanza la versión 1.3 del laboratorio con nuevas herramientas de evaluación de modelos y utilidades prácticas

Seguimos ampliando el laboratorio de Analytics Lane con el lanzamiento de la versión 1.3, disponible…

2 semanas ago

This website uses cookies.