pro iug_plot2d_smart, vn, col, row, start_time=start_time
npar = n_params()
if npar lt 1 then return
if strlen(tnames(vn[0])) eq 0 then return
if npar eq 1 then begin & col=1 & row=1 & endif
col = ( col < 10 )
row = ( row < 10 )
get_data, vn[0], data=d
smt_time = d.x
smt_dat = d.y
dat_idx_max = n_elements(smt_dat[*,0,0])-1
if ~keyword_set(start_time) then begin
tr=timerange(trange)
start_time=time_string(tr[0])
endif
index=where(smt_time ge time_double(start_time), cnt)
if cnt eq 0 then begin
message,'No data has been loaded after start_time.',/info
return
endif
xsize = 800L & ysize = 800L
window, 0, xs=xsize, ys=ysize
loadct,0
erase
dxsize = fix( float(xsize) / col )
dysize = fix( float(ysize) / row )
img_idx = index[0]
for j=0, row-1 do begin
for i=0, col-1 do begin
if img_idx gt dat_idx_max then break
img = reform( smt_dat[img_idx,*,*] )
tstr = time_string( smt_time[img_idx])
x0 = i * dxsize
y0 = ysize - (j+1)*dysize
redimg = congrid(img,dxsize,dysize)
tvscl, redimg, x0, y0, /device
xyouts, x0+dxsize/2.,y0+5, tstr, /device, charsize=1.5, color=255, $
alignment=0.5
img_idx ++
endfor
endfor
return
end