《Netlogo多主体建模入门》笔记5

5- 从羊-草生态系统深入Turtle与Plot画图
 
  • 对图或者运行窗口 点击右键, 选定之后,能自由缩放大小、拖动位置
《Netlogo多主体建模入门》笔记5_第1张图片
 
《Netlogo多主体建模入门》笔记5_第2张图片
 
 
观测某个 turtle
《Netlogo多主体建模入门》笔记5_第3张图片
 
  • inspect ----- 监视 turtle 的详细信息
《Netlogo多主体建模入门》笔记5_第4张图片
 
  • watch-----在图中标记 turtle 的运动
《Netlogo多主体建模入门》笔记5_第5张图片
 
  • follow ----- 跟随该 turtle
《Netlogo多主体建模入门》笔记5_第6张图片
 
如何绘图?
 
下拉选图,然后添加
《Netlogo多主体建模入门》笔记5_第7张图片
 
自动调整尺度: 自动调整横纵坐标轴的取值范围
显示图例:就是显示每条线的颜色和代表了什么
 
绘图笔的名称 最好用英文,因为涉及到函数调用
 
《Netlogo多主体建模入门》笔记5_第8张图片
可以改变线条的颜色
《Netlogo多主体建模入门》笔记5_第9张图片
 
《Netlogo多主体建模入门》笔记5_第10张图片
 
Plot绘图 需要设置 tick
不然图无法和模型的时间同步,就无法作图
 
代码:
 
turtles-own [energy] ;; 需要给turtles新建一个属性
 
to setup
  clear-all
  ask patches[
    if random-float 1 < 0.2[
    set pcolor green  ;;随机长草
    ]
  ]
  create-turtles 1[
    set energy 100  ;;给个初始化的能量值
  ]
  reset-ticks
end
 
to go 
  add_food ;; 每一步都要让草长出来
  ask turtles[
    turtle_move  ;; 函数调用
    turtle_breed
    turtle_die
  ]
  tick
end
 
to add_food  ;; 长草=添加食物
  ask n-of 10 patches[  ;; 随机取出10个patch
    set pcolor green
  ]
end
 
 
to turtle_move  ;; 移动
  if pcolor = green [
   set energy energy + 10  ;; 吃草
    set pcolor black
  ]
  if random-float  1 < 0.2 [
    set heading random 360  ;; 有一定的概率随机改变方向
  ]
  set energy energy - 1 ;;每走一步,能量减少 
  fd 1 ;;向前移动 
end
 
to turtle_breed  ;; 繁殖
  if energy > 500[
   set energy energy - 450
    hatch 1[ ;; 生育出一头小羊
     fd 1
      set energy 100  ;; 小羊的初始能量
    ]
  ]
end
 
to turtle_die  ;; 没能量就死亡
  if energy <= 0 [
    die 
  ]
end

 

 
 
 
 

你可能感兴趣的:(《Netlogo多主体建模入门》笔记5)