我为每只乌龟创建了一个包含三个元素的列表(观点1观点2观点3)。每个元素都在[-1; +1]范围(每只海龟三个随机值)。
我现在想要的是绘制一个具有3条向下倾斜曲线的图,该曲线反映了至少具有 个给定意见的海龟数量。也就是说,如果我有100只海龟,那么-1有100次出现,+ 2有0次出现。到目前为止,我已经成功创建了
的意见直方图set-current-plot "opinion distribution"
set-histogram-num-bars 10
histogram [sum opinions] of turtles
哪个给 但这并不是我真正想要的,因为(1)我将所有三种意见放在一起,而我希望它们分开,并且(2)我所追求的不是向下倾斜的线,而是累计频率而不是绝对频率。 / p>
任何帮助一如既往!
在LukeC发表评论后,我添加了一张图片,试图使我的图形目标更加清晰
答案 0 :(得分:0)
您能否提供更多细节或示例,说明您的情节应该是什么样子?我不太确定您要在这里计算什么-您是否要检查以其中一种意见为最低意见的海龟数量?如果是这样,这可能会满足您的尝试。通过此setup
和玩具go
过程来修改乌龟的意见:
turtles-own [ opinions ]
to setup
ca
crt 100 [
set opinions n-values 3 [ random 3 - 1 ]
]
reset-ticks
end
to go
ask turtles [
let i one-of [ 0 1 2 ]
let my-opinion item i opinions
let greater one-of other turtles with [
item i opinions > my-opinion
]
if greater != nobody [
set opinions replace-item i opinions [ item i opinions ] of greater
]
]
tick
end
您可以使记者返回您需要的任何值。在这里,我做了三位装箱记者,他们只以三个可能值作为opinions
列表的最小值来计算海龟的数量:
to-report bin-1
report count turtles with [ min opinions = -1 ]
end
to-report bin-2
report count turtles with [ min opinions = 0 ]
end
to-report bin-3
report count turtles with [ min opinions = 1 ]
end
如果您密谋这些记者(例如,用一支叫plot bin-1
的密谋笔),您将得到类似的信息:
那是正确的吗?如果没有,您能否再充实一点您希望随着时间的推移而呈现的样子?