; HYDRO.PRO
;
; Program to plot 3-D data irregularly-spaced in 2 dimensions.
;
; Illustrates the use of !P.MULTI for multiple plots on a page

; 09-Sep-92 WMD

; Specifiy x, y coordinates of 12 wells
CX = [14,19,34,31,40,52,54,65,67,82,86,74]
CY = [23,77,10,46,76,37,57,45,73,83,44,22]

; Define VOC concentrations at 12 wells at 6 different levels
Data6 = [ [0  ,0   ,2 , 12,0.02,  20,150,100,    5,0,0.01,0.03],        $
          [0.2,0.05,10, 22,  13,  50,200,180,  900,0, 0.1,0.2], $
          [0.2,0.05,10, 22,  13, 200,400,220, 1100,0, 0.1,0.2], $
          [0.2,0.05,4 , 12,   5, 350,250,130, 1300,0,0.02,0.5], $
          [0.2,0.05,4 , 12,   5, 220,150, 70,  800,0,0.02,0.5], $
          [0  ,0   ,0 ,  1,0.02,  20, 50, 40,   80,0,   0,0] ]

TRIANGULATE,cx,cy,tr,b          ; IDL interpolation routine
tdata3d = FLTARR(100,100,6)     ; Create an array
!P.MULTI=[0,3,2]                ; plot 3 columns by 2 rows before erasing

FOR level = 0,5 DO BEGIN
   mtitle = 'Hydrology Level '+STRTRIM(STRING(level+1),2)
   tdata = trigrid(cx,cy,data6(*,level),tr,[1,1],[1,1,100,100])
   tdata3d(*,*,level) = tdata
   CONTOUR,tdata,levels=[1,10,100,1000],  $
                C_LABELS=[1,1,1,1], title = mtitle
   OPLOT,cx,cy,psym=1
ENDFOR

FOR level = 0,5 DO BEGIN
   surface,REBIN(tdata3D(*,*,level),25,25),ax=60,az=60,  $
                CHARSIZE=2,zrange=[0,1500]
ENDFOR

STOP
END