带网格和相关操作的numpy数组
spacegrids的Python项目详细描述
spacegrids是一个开源的库,它为numpy数组提供了网格、标记轴和相关的网格相关数学方法,如重新划分网格和积分。空间网格提供了NETCDF数据的对象数据模型,它保证了在普通操作下,麻木数据阵列与其网格之间的一致性(以及避免与轴解释相关的常见缺陷),以及更多。这是一个日常使用的少写多做图书馆。
这些interactive plots from Netcdf data是基于空间网格的。
field、gr(grid)和coord对象使日常使用变得简单:
>>> import spacegrids as sg >>> D = sg.info(nonick = True) >>> P = sgPproject(D['my_project'] , nonick = True) >>> P.load(['temperature','u']) >>> # obtain the axes objects under their names T,X,Y,Z: >>> for c in P['some_experiment'].axes: >>> exec c.name + ' = c' # now we can refer to X,Y >>> TEMP = P['some_experiment']['temperature'] >>> U = P['some_experiment']['u'] # zonal velocity >>> TEMP_sliced = TEMP[Y,:50] # slice. Note Y axis object >>> m_TEMP = TEMP_sliced/(X*Y) # take hor. mean >>> TEMP_regridded = TEMP.regrid(U.gr) # U grid differs
功能
- 带有网格的numpy阵列,允许自动对齐和尺寸广播
- 易于使用和直观的重新拼接功能
- 与netcdf密切相关的数据对象模型
- 通过使用多个netcdf文件抽象io来简化io
- 通过聚合方法使处理许多实验的输出变得容易
- field类消除了由于选择错误的数组索引而产生的错误
- 由于自动标签、轴等,打印速度更快。
- 与距离相关的方法,如球面上的空间微分和积分
- 广泛的单元测试和文档
在源代码和其他地方都有很多文档。其他文档可在:
安装
只需运行(在命令行上):
pip install spacegrids
依赖项:numpy、scipy、matplotlib(netcdf4可选)。在ubuntu/debian上,如果pip安装失败,通过package manager安装依赖项:
apt-get install python-{tk,numpy,matplotlib,scipy}
在Mac上,PIP可以通过“sudo easy_install pip”安装。
贡献
- 问题跟踪器:github.com/willo12/spacegrids/issues
- 源代码:github.com/willo12/spacegrids
支架
如果你有问题,请告诉我们。
许可证
该项目是根据bsd许可证授权的。