Source
%% auteur : Péric
30 setxunit
7.5 setborder
90 setangle_repere
-8 8 setxrange
-8 8 setyrange
1 1 settkstep
1 1 setsubtkstep
2 2 setmkstep
ticks
subticks
marks
traceaxes
axesarrow
unites
/f {setxvar
#rpn#   (x^3+10*x)/(x^2+1)
} def
/h {setxvar
#rpn#   10*x
} def
/g {setxvar
#rpn#   x
} def
/f' {  setxvar
0
} def
gsave
   noir
   1 setlinewidth
   continu
   {f} courbe
grestore
gsave
   noir
   %rouge
   .75 setlinewidth
   continu
   {g} courbe
grestore
gsave
   noir
   %rouge
   .75 setlinewidth
   continu
   {h} courbe
grestore
noir
%rouge
2 settailletangente          
2 sqrt (f) tangente               
5 sqrt (f) tangente               
2 sqrt neg (f) tangente               
5 sqrt neg (f) tangente   
<tex>
$\sqrt{2}$
</tex>
2 sqrt 0 dctexlabel
<tex>
$\sqrt{5}$
</tex>
5 sqrt 0 dctexlabel
<tex>
$-\sqrt{2}$
</tex>
2 sqrt neg 0 uctexlabel
<tex>
$-\sqrt{5}$
</tex>
5 sqrt neg 0 uctexlabel

<latex>
$y=x$
</latex>
-4 dup g [1.5 dup] {1 1 atan} urtexlabel
<latex>
$y=10x$
</latex>
0.6 dup h [1.5 dup] {10 1 atan} drtexlabel

0.75 setlinewidth
dotted
[ 2 sqrt dup dup f 0 3 1 roll] ligne
[ 5 sqrt dup dup f 0 3 1 roll] ligne
[ 2 sqrt neg dup dup f 0 3 1 roll] ligne
[ 5 sqrt neg dup dup f 0 3 1 roll] ligne