Du kan inte välja fler än 25 ämnen
Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
|
- #lang racket
- (require racket/gui mrlib/snip-canvas plot)
-
- (define ((make-current-value-renderer fn) snip event x y)
- (define overlays
- (and x y (eq? (send event get-event-type) 'motion)
- (list (vrule x #:style 'long-dash)
- (point-label (vector x (fn x)) #:anchor 'auto))))
- (send snip set-overlay-renderers overlays))
-
- (define (make-plot-snip width height)
- (define snip (plot-snip (function sin)
- #:x-min 0 #:x-max (* 2 pi) #:y-min -1.5 #:y-max 1.5
- #:width width #:height height))
- (send snip set-mouse-event-callback (make-current-value-renderer sin))
- snip)
-
- (define toplevel (new frame% [label "Plot"] [width 500] [height 200]))
- (define canvas (new snip-canvas% [parent toplevel] [make-snip make-plot-snip]))
- (send toplevel show #t)
|