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

5- 从羊-草生态系统深入Turtle与Plot画图

该系列笔记基于集智乐园的《Netlogo多主体建模入门》课程,感谢张江老师与各位志愿者的辛勤付出。

 

 

 

  • 对图或者运行窗口 点击右键, 选定之后,能自由缩放大小、拖动位置

 

 

 

观测某个 turtle

 

  • inspect ----- 监视 turtle 的详细信息

 

  • watch-----在图中标记 turtle 的运动

 

  • follow ----- 跟随该 turtle

 

如何绘图?

 

下拉选图,然后添加

 

自动调整尺度: 自动调整横纵坐标轴的取值范围

显示图例:就是显示每条线的颜色和代表了什么

 

绘图笔的名称 最好用英文,因为涉及到函数调用

 

可以改变线条的颜色

 

 

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
 
 
 

 

 

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值