load(draw); L:2; /* x のサイズ */ M:1.5; /* y のサイズ */ f(x):=sin(x); a:0; b:f(a); epsilon:0.4; c:abs(subst(a,x,diff(f(x),x)));/* この行はマネなくていよい*/ delta:epsilon/(2*c);/* delta をある程度決め打ちしている。*/ draw2d( yrange=[b-M,b+M], rectangle([a-delta,b-epsilon],[a+delta,b+epsilon]) ,explicit(f(x), x, a-L, a+L) ,terminal=wxt );