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

Data Lake y Data Warehouse: diferencias, usos y cómo se complementan en la era del dato

En la era del dato, las organizaciones se enfrentan al reto de gestionar volúmenes masivos…

2 días ago

Documentar tu API de Express con TypeScript usando OpenAPI (Swagger)

En la serie Creación de una API REST con Express y TypeScript construimos una API…

4 días ago

Curiosidad: El sesgo de supervivencia, o por qué prestar atención sólo a los que “llegaron” puede engañarte

Durante la Segunda Guerra Mundial, la Fuerza Aérea de Estados Unidos quería reforzar sus aviones…

1 semana ago

Cómo abrir una ventana de Chrome con tamaño y posición específicos desde la línea de comandos en Windows

En muchas situaciones —ya sea para grabar un tutorial, tomar capturas de pantalla profesionales, probar…

2 semanas ago

La Paradoja del Cumpleaños, o por qué no es tan raro compartir fecha de nacimiento

Imagínate en una sala con un grupo de personas, por ejemplo, en una oficina, un…

2 semanas ago

Programador de tareas de Windows: Guía definitiva para automatizar tu trabajo (BAT, PowerShell y Python)

En el trabajo diario con ordenadores, es común encontrarse con tareas repetitivas: realizar copias de…

3 semanas ago

This website uses cookies.