我试图查看文档,但我找不到我需要的答案。所以我在这里问:
我有15只海龟(这个数字可以变化),我需要将它们的变量(例如Revenue)绘制成一个图。我知道我可以绘制1个代理槽命令的变量
plot [revenue] of turtle 0
但是我如何绘制整个代理集呢?
我的第二个问题是,当我有乌龟0的命令图[收入]时,netlogo给我一个错误,说明:预期输入是乌龟代理集或乌龟但是反而得到了NOBODY(当我按下设置按钮时)。如何避免呢?
谢谢,Mestralx。
答案 0 :(得分:2)
对于错误,您是否在代码中的任何位置重置了滴答?你需要它来初始化图。通常,您应将其放置在设置过程的最后。此外,绘图命令(如果您使用它们)不应该通过设置调用,但应该在go过程中,因为否则您将只获得初始值而不是随时间变化的绘图。
如果您的乌龟计数不同,您最好的方法可能是绘制关键值,如最小值,平均值,中位数或其他值。 NetLogo建议的做法是直接在界面中而不是在代码中执行此操作。因此,您可以在界面上创建一个绘图,例如mean [revenue] of turtles
作为绘图代码。如果您希望显示所有收入值但是不会随时间给出一个情节,您也可以进行直方图。
答案 1 :(得分:1)
您可以使用create-temporary-plot-pen
随意制作尽可能多的绘图笔。在你的情况下,每只乌龟一个。
这是一个小代码示例。假设我有:
to setup
clear-all
reset-ticks
end
to go
if ticks < 10 [ create-turtles 1 ]
ask turtles [ fd 1 ]
tick
end
现在在我的情节中,我删除了默认笔,并将其放在情节&#34;绘图更新命令&#34;:
ask turtles [
create-temporary-plot-pen (word who)
set-plot-pen-color color
plotxy xcor ticks
]
如果我运行它,我得到: