On Aug 10, 2013, at 7:04 PM, J G Cho wrote: > I get an error (somewhat expectedly) when I try > > (big-bang init > (on-tick random-walk 1) > ;(on-key door-actions) > (to-draw plot-render) > )) > > where plot-render is defined as > > (define (plot-render world) > (p:plot (p:lines > (world->list-of-vectors world) > #:color 6 #:label "Random walk"))) > > with the following at the top > > (require (prefix-in p: plot)) > > The error msg is > > plot: could not determine sensible plot bounds; got x ∈ [0,0], y ∈ [1,1] > > Is there way to let plot know of the context? Or pass a context to plot and > extract the pixels and hand it over to via some proc in 2htdp/image? Or maybe > there is a simple way?
This works like a charm for me: #lang racket (require (prefix-in p: plot) 2htdp/universe) (define (plot-render world) (p:plot (p:lines (world->list-of-vectors world) #:color 6 #:label "Random walk"))) (define (world->list-of-vectors world) `(#(1 3) #(2 -2) #(4 3))) (define (random-walk world) 'more-dummy) (big-bang 'dummy ; init (on-tick random-walk 1) (to-draw plot-render)) ;; --- When I had a student implement the first plot version, I intentionally made sure that plot returned something I could use in big-bang. And btw, this works too: #lang racket (require (prefix-in p: plot) 2htdp/universe 2htdp/image) (define (plot-render world) (overlay (p:plot (p:lines (world->list-of-vectors world) #:color 6 #:label "Random walk")) (square 800 'solid 'blue))) (define (world->list-of-vectors world) `(#(1 3) #(2 -2) #(4 3))) (define (random-walk world) 'more-dummy) (big-bang 'dummy ; init (on-tick random-walk 1) (to-draw plot-render))
____________________ Racket Users list: http://lists.racket-lang.org/users