2014-09-29 49 views
1

如何在海龜離開建築物後激活報警時繪製直方圖。我添加了這段代碼,但是看起來好像工作不正常,時間也不正確。圖中的時間假設在「疏散時間」監視器中不像時間顯示一樣。有人可以在這方面給我建議。先謝謝了。如何在netlogo中繪製圖表

globals 
[ 
percent-leader 
flag-active-alarm 
time-to-evacuate 
flag-alarm 
time-to-exits 
] 

to setup 
clear-all 
reset-ticks 
set flag-active-alarm false 
set time-to-exits [] 
setup-turtles 
end 

to go 
ask turtles [wander fd 0.01] 
if (flag-active-alarm)[active-alarm] 
if all? turtles [ pcolor = red ] ;stops simulation 
[ stop ] 

if all? turtles [ pcolor = red ] 
    [ 
    plot-time-to-exits 

    ] 
tick 
end 

to plot-time-to-exits 
set-current-plot "PDF-Escape-Time" 
set-plot-x-range min time-to-exits max time-to-exits 
histogram time-to-exits 
end 

回答

1

有爲什麼它可能無法正常工作像您期望(順便說一下,在一般情況下,你應該告訴我們它實際上正在做的事情是錯誤的)一對夫婦的原因。首先,你必須:

if all? turtles [ pcolor = red ] ;stops simulation 
[ stop ] 

if all? turtles [ pcolor = red ] 
    [ 
    plot-time-to-exits 

    ] 

這裏的問題是,如果海​​龜都紅了這段代碼的開始,比模擬站和第二個條件(即在它的身上調用plot-time-to-exits)從來都不是到達。如果任何海龜不是紅色,那麼第二個條件是假的,它的身體永遠不會運行。因此,永遠不會調用plot-time-to-exits

我想你可能需要更多的東西一樣:

if all? turtles [ pcolor = red ] [ 
    plot-time-to-exits 
    stop 
] 

下,沒有數據被添加到time-to-exits。我完全相信你正在設計什麼(也不知道如何計算「疏散時間」監視器的時間),但我希望在某處看到類似set time-to-exits lput time time-to-exits的東西。