ncwriteschema
将 netCDF 架构定义添加到 netCDF 文件中
说明
ncwriteschema(
在 netCDF 文件 filename
,schema
)filename
中创建或添加 schema
中定义的属性、维度、变量定义和组结构体。
您可以使用 ncwriteschema
和 ncinfo
根据现有文件架构创建一个 netCDF 文件。
注意
ncwriteschema
不会写入变量数据。要将数据写入已创建的变量,需要使用 ncwrite
函数。无限维度初始大小为 0,直到写入数据后大小才会变化。
注意
ncwriteschema
不能修改现有文件的格式。它无法重新定义 filename
中的现有变量或维度。如果 schema
中包含文件中已有的属性、维度、变量定义或组结构体,ncwriteschema
将会发出警告,但还会继续处理。
示例
使用维度定义创建文件
使用两个维度定义为一个标准格式的 netCDF 文件定义架构。然后将该架构写入一个 netCDF 文件。
mySchema.Name = "/"; mySchema.Format = "classic"; mySchema.Dimensions(1).Name = "time"; mySchema.Dimensions(1).Length = Inf; mySchema.Dimensions(2).Name = "rows"; mySchema.Dimensions(2).Length = 10; ncwriteschema("emptyFile.nc",mySchema)
显示 emptyfile.nc
的内容。
ncdisp("emptyfile.nc")
Source: pwd\emptyfile.nc Format: classic Dimensions: time = 0 (UNLIMITED) rows = 10
使用现有变量架构创建文件
使用 ncinfo
从文件 example.nc
中获取 peaks
变量的架构,并将此架构写入一个新文件。
myVarSchema = ncinfo("example.nc","peaks"); ncwriteschema("peaksFile.nc",myVarSchema)
从 example.nc
中读取 peaks
的数据,将其写入新文件,并验证结果。
peaksData = ncread("example.nc","peaks"); ncwrite("peaksFile.nc","peaks",peaksData) ncdisp("peaksFile.nc")
Source: pwd\peaksFile.nc Format: netcdf4 Dimensions: x = 50 y = 50 Variables: peaks Size: 50x50 Dimensions: x,y Datatype: int16 Attributes: _FillValue = -32767 description = 'z = peaks(50);'
输入参数
filename
— 文件名
字符串标量 | 字符向量
文件名,指定为字符串标量或字符向量。指定一个现有 netCDF 文件的名称,或指定要分配给新 netCDF 文件的名称。
如果 filename
不存在,且没有用 schema
中的 Format
字段指定格式信息,这种情况下 ncwriteschema
会用 netcdf4_classic
格式创建 netCDF 文件。
示例: "myFile.nc"
schema
— NetCDF 文件、组、维度或变量架构
结构体 | 结构体数组
NetCDF 文件、组、维度或变量架构,指定为结构体或结构体数组。schema
参量可以表示 netCDF 文件、netcdf4
格式的 netCDF 文件中的组、一个或多个 netCDF 维度,或者一个或多个 netCDF 变量。文件或组架构可以包含变量架构的字段、维度架构的字段或同时包含两者。您可以使用 ncinfo
的输出作为架构。
下表列出了不同架构类型中的字段。可选字段用星号 (*) 标记,仅适用于 netcdf4
或 netcdf4_classic
格式的数据的字段用剑号 (†) 标记。
架构类型 | 字段 | 描述 |
---|---|---|
文件或组架构 | Name | 使用 "/" 表示文件架构或组架构的组名称,指定为字符串标量或字符向量 |
Groups (*) | 组架构,指定为结构体或结构体数组 | |
Dimensions (*) | 维度架构,指定为结构体或结构体数组 | |
Variables (*) | 变量架构,指定为结构体或结构体数组 | |
Attributes (*) | 属性架构,指定为包含 Name (字符串标量或字符向量)和 Value 字段的结构体向量 | |
Format (*) | NetCDF 文件格式,指定为 注意 如果架构是组架构,则
| |
维度架构 | Name | 维度名称,指定为字符串标量或字符向量 |
Length | 维度长度,指定为非负整数(对于无限维度,可以为 Inf 或 0 ) | |
Unlimited (*) | 维度是否无限,指定为逻辑标量 注意 如果此字段的值为
| |
Format (*) | NetCDF 文件格式,指定为 注意 如果维度架构是文件或组架构内的一个架构,则
| |
变量架构 | Name | 变量名称,指定为字符串标量或字符向量 |
Dimensions | 维度架构,指定为结构体或结构体数组 | |
Datatype | MATLAB® 数据类型,指定为字符串标量或字符向量 | |
Attributes (*) | 属性架构,指定为包含 Name (字符串标量或字符向量)和 Value 字段的结构体向量 | |
ChunkSize (*) (†) | 变量的块大小,指定为数值标量 | |
FillValue (*) (†) | 变量的填充值,指定为数值标量或文本 | |
DeflateValue (*) (†) | 变量的 Deflate 压缩级别,指定为非负整数 | |
Shuffle (*) (†) | 是否启用 Shuffle 过滤器,指定为逻辑标量 | |
Format (*) | NetCDF 文件格式,指定为 注意 如果变量架构是文件或组架构内的一个架构,则
|
数据类型: struct
版本历史记录
在 R2011a 中推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)