Plot 需要计算Netlogo中4个品种的海龟数量

Plot 需要计算Netlogo中4个品种的海龟数量,plot,netlogo,Plot,Netlogo,我正在为化学反应a+B C+D建立一个平衡模拟,并想在每次滴答声后计算CD/AB(海龟数量),将该值添加到一个变量中,然后除以滴答声运行的数量,得到一个平均值,然后绘制运行平均值。我可以使用界面屏幕上的监视器按钮进行计算,但我想绘制和平均值与静态值。如何在Netlogo中执行计算并存储值?只要需要内存(即访问某个对象的以前的值),最简单的方法就是使用变量存储值。可以将整个系列存储为列表。让我们称这个变量为“平衡” 在代码的顶部,您需要: globals [equilibrium] 告诉NetL

我正在为化学反应a+B C+D建立一个平衡模拟,并想在每次滴答声后计算CD/AB(海龟数量),将该值添加到一个变量中,然后除以滴答声运行的数量,得到一个平均值,然后绘制运行平均值。我可以使用界面屏幕上的监视器按钮进行计算,但我想绘制和平均值与静态值。如何在Netlogo中执行计算并存储值?

只要需要内存(即访问某个对象的以前的值),最简单的方法就是使用变量存储值。可以将整个系列存储为列表。让我们称这个变量为“平衡”

在代码的顶部,您需要:

globals [equilibrium]
告诉NetLogo变量存在。在您的设置中,您应该让NetLogo知道这将是一个列表,使用:

set equilibrium []
然后,当您计算时,您可以将当前值存储在列表的前面,类似这样的内容(或
lput
如果您希望它位于末尾):

与任何列表一样,可通过
mean
找到平均值。将其放在列表前面的优点是,它始终是绘图的
项0

在这种情况下,由于您只需要平均值,所以不需要整个列表。您可以简单地为总计(例如cum calc)创建一个变量,并在每个刻度上添加当前值:

set cum-calc cum-calc + calc

谢谢你的回答-我会玩一下这个,看看我是否能用cum-calc/ticks做一个绘图
set cum-calc cum-calc + calc