Taylorův polynom

Manipulate[
LocatorPane[Dynamic[{xx,0},(xx=First[#])&],
Column[
{
(* plot *)
Dynamic[Plot[
Evaluate[{func/.x->t,Normal[Series[func/.x->t,{t,xx,order}]]}],
{t,-xrange,xrange},
PlotRange->{{-xrange,xrange},{-yrange,yrange}},
ImageSize->{600},
PlotStyle->{{Blue,Thick},{Red,Thick}},
AxesLabel->{x,y},
Epilog->{Gray,Line[{{xx,0},{xx,func/.x->xx},{0,func/.x->xx}}]}
]
]
}
],
Appearance->Graphics[{Red,Disk[]},ImageSize->8]
],
(* controls *)
{{order,1,"stupeň"},1,100,1,Appearance->"Labeled"},
{{xrange,2π,"x-rozsah"},0.1,20,.1,Appearance->"Labeled"},
{{yrange,2,"y-rozsah"},0.1,40,.1,Appearance->"Labeled"},
{{func,Sin[x],"funkce"},
{
Sin[x]->TraditionalForm[Sin[x]],
Log[1+x]->TraditionalForm[Log[1+x]],
ArcTan[x]->TraditionalForm[ArcTan[x]],
(1/(1+(x^2)))->TraditionalForm[(1/(1+(x^2)))],
Exp[x]->TraditionalForm[Exp[x]]
}
},
{{xx,0},-xrange,xrange,ControlType->None}
]