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!

 采纳的回答

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;

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Data Type Conversion 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by