将栅格数据导入NetLogo会导致一列所有补丁变量= 0

时间:2018-07-05 08:53:29

标签: gis netlogo raster

当我使用此代码将栅格图层导入NetLogo并调整大小时,最后一列的所有面片变量在应包含数据时均为零。这种情况仅发生在同一景观中的一些栅格上。

set rasterLayer gis:load-dataset "x.asc"
resize-world 0 (gis:width-of rasterLayer) -1 0 (gis:height-of rasterLayer) -1
gis:set-world-envelope gis:envelope-of rasterLayer
gis: apply-raster rasterLayer 

调整世界大小时,如果没有'-1',我会得到一列NaN值(Importing raster data into NetLogo results in a row/column of NaN values)。

此栅格的尺寸正确;数值为0的列不是多余的一列,这意味着某些数据会丢失。

1 个答案:

答案 0 :(得分:1)

感谢@Tyr:here发布了此可能的错误的解决方法。这是我用于NetLogo 6的代码,用于确保将栅格正确应用于NetLogo世界:

 file-open "data/my-folder/my-file.asc"
 let temp []
 repeat 6 [let header file-read-line] ; skip first 6 lines of header
 while [file-not-at-end?][
       set temp lput file-read temp 
]
 file-close
(foreach sort patches temp [
       [a b] -> ask a [ set my-variable b] 
 ] )