爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6477|回复: 0

[经验总结] 多个坐标的两种常见变量形式的转换

[复制链接]
发表于 2022-8-23 15:18:55 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 15195775117 于 2022-9-15 11:15 编辑

多个经纬度的表示方法,目前有2种:

1、经纬度分别作为一个序列,例如:
lng=[120,121,122,...]
lat=[20,21,22,...]
很多语言或工具,如Python,matlab,IDL...的画图模块都是支持这种表示方式。

2、成对的经纬度的列表,例如:
[(120,30),(121,21),(122,22),...]
线性模型sklearn.linear_model和shp文件支持这种。

我们平时做科学计算和制图,常将数据整理成第1种的形式,但有时也需要转为第2种,以下为转换方法。

源代码:

import numpy as np
n=5
x=np.linspace(120,124,n)
y=np.linspace(20,24,n)
z=np.linspace(10,14,n)

print(list(zip(x,y)))
print(list(zip(x,y,z)))

# 结果:
# [(120.0, 20.0), (121.0, 21.0), (122.0, 22.0), (123.0, 23.0), (124.0, 24.0)]
# [(120.0, 20.0, 10.0), (121.0, 21.0, 11.0), (122.0, 22.0, 12.0), (123.0, 23.0, 13.0), (124.0, 24.0, 14.0)]


逆运算:

a = [1,2,3]
b = [4,5,6]

c= zip(a,b)
c=list(c)

# 逆运算zip(*):
a2, b2 = zip(*c)

print(list(a2))
print(list(b2))

# 注意:
# zip()和zip(*)的参数都是list,返回值都要转list




密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表