目标Region.nc文件制作

该代码示例展示了如何使用xarray、numpy和pandas来定义经纬度网格,然后在数据阵列中定位并标记特定区域(郑州)为1,最后将结果存储为netcdf文件。过程包括计算目标区域的索引、赋值和构建带有坐标信息的Dataset。
摘要由CSDN通过智能技术生成
import xarray as xr
import pandas as pd
import numpy as np
# China,维度50,10; 经度75,135
# ZhenZhou,维度36,33; 经度110,115

# DataArray的数据和变量设置
latitude = np.arange(50, 9.75, -0.25)
longitude = np.arange(75, 135.25, 0.25)
data = np.zeros([len(latitude), len(longitude)])

# 求目标区经纬度在数组中对应的索引
lat_list = latitude.tolist()
lat_start = lat_list.index(36)
lat_end = lat_list.index(33)
long_list = longitude.tolist()
long_start = long_list.index(110)
long_end = long_list.index(115)
# 目标区赋值为1
for row in range(lat_start, lat_end+1):
    for col in range(long_start, long_end+1):
        data[row][col] = 1

# 构造DataArray并放进Dataset
source_region = xr.DataArray(data, coords=[('latitude', latitude), ('longitude', longitude)])
source_region.name = 'source_region'
source_region.coords['latitude'].attrs['long_name'] = 'Latitude'
source_region.coords['latitude'].attrs['units'] = 'degreeN'
source_region.coords['longitude'].attrs['long_name'] = 'Longitude'
source_region.coords['longitude'].attrs['units'] = 'degreeE'
region_set = source_region.to_dataset()

# 保存Dataset到nc文件
save_path = r'D:\floodcase_202107\preprocessed_data\source_region_zhengzhou.nc'
region_set.to_netcdf(save_path)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值