我尝试将tiff转换为netcdf文件。错误就是索引错误:
<?php $data = "'Twas The Night Before Christmas"; ?>
<form method="post" name="my_form">
<input type="text" name="note" id="note" value="" />
<input type="button" value="Edit" onclick='editNote("<?php echo $data; ?>")' />
<!-- other elements here ... -->
</form>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
function editNote(data){
$('#note').val(data);
}
</script>
错误是该索引错误:数据数组的大小不符合slice。有人可以看看并帮助我做错了什么。非常感激!
答案 0 :(得分:0)
我将xarray用于此类事情。为您拥有的每个变量创建xarray DataArray(似乎对您来说是SHIA)。使用它创建DataSet和相关的DataArray。不要忘记将坐标变量设置为“数据集”作为坐标。
请参阅: http://xarray.pydata.org/en/stable/io.html
还可以将netcdf / tiff转换为数据帧,然后再次返回。但除非您必须,否则我不建议您这样做。 Beause netcdf是多维数据,数据帧将所有数据表示为克隆到一个矩阵。
答案 1 :(得分:0)
我想到的最简单的方法是使用GDAL工具。
# Convert TIF to netCDF
gdal_translate -of netCDF -co "FOMRAT=NC4" ia.tif ia.nc
# Convert SHP to netCDF
gdal_rasterize -of netCDF -burn 1 -tr 0.01 0.01 input.shp output.nc