Source
%% auteur : Peric
%-1.25 2.75 setxrange
-0.5 8 setxrange
-3.2 7.8 setyrange
56.90 setxunit

/t {2} def
/m {1.5} def
/xmarkstyle {[m dup] dctext} def
/ymarkstyle {[m dup] cltext} def
noir
continu
1 setlinewidth
[1 7 1 stepto] {xtick } apply
[-3 8 1 stepto] {ytick} apply
[1 7 1 stepto] {xmark } apply
[-3 8 1 stepto] {ymark } apply
0 ytick 
0 ymark
unites

[0 0 xmax 0] ligne
[0 ymin 0 ymax] ligne

/titrait {%le point à marquer puis un point de la droite
4 dict begin 
/b defpoint
/a defpoint
/d {a a b vecteur arg 90 add dir 0.1 mulv translatepoint} def
/e {a a b vecteur arg -90 add dir 0.1 mulv translatepoint} def
[d e] ligne
end
} def

/f {setxvar
#rpn# (x^3+3*x-1)/x^2
} def
/g {setxvar
x
} def
/A {1 dup f} def
/K {1 3 div dup} def
A 0 3 titrait
(A) A up 0.1 mulv translatepoint [t dup] uctext
(K) K [t dup] ultext
K point

gsave
0.01 7.4 {f} Courbe
grestore

gsave
pointilles
[5 5] 0 setdash
0 7.5 {g} Courbe
grestore

<latex>
$\overrightarrow{i}$
</latex>
0.7 0.0 [m dup] dctexlabel

<latex>
$\overrightarrow{j}$
</latex>
0 0.7  [m dup] cltexlabel

((D)) 7.4 dup g [t dup] drtext
((C)) 7.4 dup f [t dup] ultext