Shifting Elements in a Matrix

I have a domain from 0 : 2*pi and corresponding data points.
I need to shift this data so that the range is -pi : pi (by subtracting 2*pi for all values over pi), while keeping the relationships to the datapoints the same.
I've tried just reordering the data putting 0 in the middle, but this effects other calculations.
My best option so far is manually reordering points, but feel like there is a more efficient way.
Thank you!

 Respuesta aceptada

Walter Roberson
Walter Roberson el 25 de Abr. de 2021
If you have Mapping Toolbox then there is https://www.mathworks.com/help/map/ref/wraptopi.html
Otherwise,
mask = data > pi;
data(mask) = data(mask) - 2*pi;

Más respuestas (0)

Categorías

Más información sobre Data Type Conversion en Centro de ayuda y File Exchange.

Preguntada:

el 25 de Abr. de 2021

Respondida:

el 25 de Abr. de 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by