      SUBROUTINE draw_axes(xmin,xmax,ymin,ymax)
*     目盛の数
      IMPLICIT NONE
      REAL dx, dy, tx, ty, x, x0, y, y0, xmin, xmax, ymin, ymax
      INTEGER IR_, itick, ntick
      ntick = 10
*     dx は x 軸上の目盛の間隔
      dx = (xmax - xmin)/ntick
*     dy は y 軸上の目盛の間隔
      dy = (ymax - ymin)/ntick
*     window 文でマージン(縁)をとる
      CALL GWindow(IR_, xmin - dx, ymin - dy, xmax + dx, ymax + dy)
      x0 = max(0,xmin)
      IF(ymin*ymax .LT. 0) THEN
         y0 = 0
      ELSE
         y0 = ymin
      END IF
      CALL GWline(IR_, xmin, y0, xmax, y0)  ! 水平軸
      CALL GWline(IR_, x0, ymin, x0, ymax)  ! 垂直軸
      tx = 0.1D0*dy                         ! 目盛の大きさ
      ty = 0.1D0*dx
      DO itick = 0, ntick
         x = xmin + itick*dx
         CALL GWline(IR_, x, y0 - tx, x, y0 + tx)
                                            ! x 軸に目盛を描く
         y = ymin + itick*dy
         CALL GWline(IR_, x0 - ty, y, x0 + ty, y)
                                            ! y 軸に目盛を描く
      END DO
      END
