Rotación de matrices en Matlab

En esta clase, voy a mostrarte cómo rotar una matriz o un arreglo en Matlab, una habilidad esencial para el manejo de datos.

¿Qué implica rotar una matriz? Rotar una matriz consiste en girarla en el sentido de las agujas del reloj (hacia la derecha) o en sentido contrario (hacia la izquierda). Por ejemplo, al rotar 90 grados en el sentido de las agujas del reloj, una matriz de 2x3 se transforma en una de 3x2, donde las filas originales pasan a ser las columnas, y viceversa.
Cómo rotar una matriz

Veamos un ejemplo práctico.

Primero, crea una matriz rectangular de 2x3 con dos filas y tres columnas.

>> M = [ 1 2 3 ; 4 5 6 ]
M =
1 2 3
4 5 6

A continuación, introduce el comando rot90(M,1) para rotar la matriz 90 grados en sentido contrario a las agujas del reloj.

>> rot90(M,1)
ans =
3 6
2 5
1 4

Así, Matlab rota la matriz 90 grados en sentido contrario a las agujas del reloj.

Matriz rotada 90 grados en sentido contrario.

Nota: También puedes lograr la misma rotación simplemente escribiendo rot90(M), ya que Matlab asume por defecto el segundo parámetro como 1. La dirección predeterminada es en sentido contrario a las agujas del reloj, siguiendo la convención en matemáticas y física.

Para girar la matriz en sentido de las agujas del reloj, introduce un valor negativo en el segundo parámetro de la función rot90().

Por ejemplo, con rot90(M,-1) conseguirás una rotación de 90 grados en ese sentido.

>> rot90(M,-1)
ans =
4 1
5 2
6 3

En este caso, Matlab ejecuta una rotación de 90 grados en el sentido de las agujas del reloj.

Rotación de 90 grados en sentido horario

Para una rotación de 180 grados en sentido contrario a las agujas del reloj, usa rot90(M,2).

>> rot90(M,2)
ans =
6 5 4
3 2 1

Matlab efectúa dos rotaciones consecutivas de 90 grados en ese sentido.

Rotación de 180 grados en sentido antihorario

Para girar la matriz 180 grados en el sentido de las agujas del reloj, escribe rot90(M,-2).

>> rot90(M,-2)
ans =
6 5 4
3 2 1

En este contexto, Matlab lleva a cabo dos rotaciones de 90 grados en sentido horario, utilizando el valor negativo -2 como segundo parámetro.

El resultado final, una rotación total de 180 grados, es idéntico al caso anterior.

Rotación de 180 grados en sentido horario

En resumen, la función rot90(M,n) permite realizar cualquier cantidad de rotaciones de 90 grados.

El segundo parámetro (n) indica el número de rotaciones en sentido antihorario (n>0) o en sentido horario (n<0).

Por ejemplo, para rotar la matriz 270 grados en sentido antihorario, introduce rot90(M,3).

>> rot90(M,3)
ans =
4 1
5 2
6 3

Matlab ejecuta tres rotaciones de 90 grados en sentido antihorario.

Rotación de 270 grados en sentido antihorario

Nota: Para una rotación de 270 grados en sentido horario, basta con escribir rot90(M,-3), especificando el entero negativo -3 como segundo parámetro.

Finalmente, para una rotación completa de 360 grados en sentido antihorario, utiliza rot90(M,4).

>> rot90(M,4)
ans =
1 2 3
4 5 6

Al rotar 360 grados, el sentido (antihorario 4, horario -4, o neutro 0) es indiferente.

Rotación de 360 grados de la matriz

En todos los casos, se obtiene el mismo resultado.

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin

Matrices en Matlab

Preguntas Frecuentes