Source
15 setxunit
7.5 setborder
90 setangle_repere
-1 20 setxrange
-1 20 setyrange
1 1 settkstep
.5 .5 setsubtkstep
1 1 setmkstep
ticks
marks
traceaxes
axesarrow
unites
/A {9 9} def
/D1 {0 18} def
/D2 {0 12} def
/f {setxvar
#rpn#   30-2*x
} def
/f' {setxvar
#rpn#   -2
} def
/g {setxvar
#rpn#   (36-x)/3
} def
/h {setxvar
#rpn#   18-x
} def
gsave
   noir
   .75 setlinewidth
   continu
  0  18 {h} Courbe
grestore

gsave
   noir
   .75 setlinewidth
   continu
  0  18 {f} Courbe
grestore
gsave
   bleu
   .75 setlinewidth
   continu
  0  18 {g} Courbe
grestore
gsave
   jaune
   continu
   /hstep 4 store
   /hangle 15 store
  0  18 {pop ymax 1 add} {f} Hachcourbes
grestore
gsave
   jaune
   continu
   /hstep 4 store
   /hangle 15 store
  0  18 {pop ymax 1 add} {h} Hachcourbes
grestore

gsave
   orange
   continu
   /hstep 6 store
   /hangle 45 store
  0  18 {pop ymax 1 add} {g} Hachcourbes
grestore
(A) A drtext
A dashpoint
(x+y=18) 2 17 {D1 A angle} drtext   
(x+3y=36) 2 12 {D2 A angle} drtext   
 (2x+y=36) 8 16 {-65} drtext