如何在xarray的nc文件中转换经度数据范围(0,360→-180,180)
经度范围(0,360)转(-180,180)的实现方法
核心转换逻辑
- 原经度值 ≤180 时,结果与原值一致
- 原经度值 >180 时,结果为原值减去360
通用数学公式
lon_new = (lon_old + 180) % 360 - 180
这个公式可自动处理所有(0,360)范围内的经度值,无需额外分支判断。
代码示例(Python)
def convert_longitude(lon_old): return (lon_old + 180) % 360 - 180 # 测试验证 print(convert_longitude(270)) # 输出: -90 print(convert_longitude(90)) # 输出: 90 print(convert_longitude(180)) # 输出: 180 print(convert_longitude(359)) # 输出: -1
代码示例(JavaScript)
function convertLongitude(lonOld) { return (lonOld + 180) % 360 - 180; } // 测试验证 console.log(convertLongitude(270)); // 输出: -90 console.log(convertLongitude(0)); // 输出: 0
内容的提问来源于stack exchange,提问作者Matthew Graber
相关产品推荐
相关产品推荐

