%!PS %%BoundingBox: 110 50 560 780 /doos { newpath dup 3 2 roll dup 6 1 roll exch moveto 3 2 roll dup 4 1 roll exch lineto dup 4 1 roll lineto exch lineto closepath stroke } def % % 110 50 560 780 doos % /Times-Roman findfont 0.12 scalefont setfont % 0 20 translate 100 100 scale 0.006 setlinewidth % X-axis and Y-axis: newpath 0.8 2 moveto 2.9 0 rlineto 1 0.4 moveto 0 4.5 rlineto stroke % Origin, start & increments: 1 2 translate /x 2.7 def /dx { x /x x 0.01 sub def } def % Function y = 1/x - A : /A 1.75 def /fun { 1 exch div A sub } def newpath dx dup fun moveto 249 { dx dup fun lineto } repeat stroke % 0.002 setlinewidth % % Iterates (starting with Unity): /pn 1 def /dp { /pn pn 2 mul A pn mul pn mul sub def } def /rc { -1 pn pn mul div } def /Pee { gsave +0.02 +0.02 rmoveto (y\50p) show -0.01 -0.05 rmoveto show 0 +0.05 rmoveto (\51) show grestore } def % newpath pn 0 moveto pn dup fun lineto (0) Pee 1 dup rc mul rmoveto -2 dup rc mul rlineto dp pn 0 moveto pn dup fun lineto (1) Pee 0.16 dup rc mul rmoveto -0.2 dup rc mul rlineto dp pn 0 moveto pn dup fun lineto (2) Pee 0.2 dup rc mul rmoveto -0.4 dup rc mul rlineto dp pn 0 moveto pn dup fun lineto (3) Pee 0.2 dup rc mul rmoveto -0.4 dup rc mul rlineto dp pn 0 moveto pn dup fun lineto % gsave +0.05 -0.12 rmoveto (1/A) show grestore % stroke % % More labels: 1.8 -1.1 moveto (y\50x\51 = 1/x - A) show 2.5 0.05 moveto (x) show -0.1 2.5 moveto (y) show -0.1 -0.1 moveto (O) show showpage