Evaluated proc magic:graph nlist { set s 10; set w [+ 25 [* [llength $nlist] $s]]; set h [+ [*r [lnum $nlist] 2] 50]; set lx 25; set ly 0; mcanvas c $w $h; for {set i 25} {$i < $w} {incr i $s} { set c [next_in_list $nlist]; set ny [- [/r $h 2] $c]; magic:line c $lx $ly $i $ny; set lx $i; set ly $ny }; save c }