;+ ;FUNCTION: ; dat = tsample([var,trange],[times=t]) ;PURPOSE: ; Returns a vector (or array) of tplot data values. ;USAGE: ; dat = tsample() ;Use cursor to select a subset of data. ; dat = tsample('Np',[t0,t1]) ;extract all 'Np' data in the given time range ;KEYWORDS: ; times: time values returned through this keyword. ; values: values returned through this keyword. ; dy : dy values ; ;- function tsample2,var,t,times=times,values=vals,noshow=noshow,index=w $ ,average=aver,nan=nan,dy=dy,stdev=stdev,silent=silent if n_elements(nan) eq 0 then nan=1 if n_elements(t) eq 0 then ctime,t,np=np,vnam=vars,noshow=noshow,silent=silent if not keyword_set(var) then var=vars[0] else var=(tnames(var,/all))[0] get_data,var,data=d c = 1 w = -1 val = !values.f_nan if not keyword_set(t) then return,val if n_elements(t) eq 2 then w = where(d.x ge t(0) and d.x lt t(1),c) if n_elements(t) eq 1 then begin dt = d.x-t[0] w = where(finite(dt) eq 0,nw) if nw ne 0 then dt[w] = 1e13 dummy = min(abs(dt),w) endif if c ne 0 then begin val=d.y(w,*) times=d.x(w) str_element,d,'v',vals if ndimen(vals) eq 2 then vals= vals(w,*) str_element,d,'dy',dy if keyword_set(dy) then dy = dy[w,*] endif if keyword_set(aver) then begin val = average(val,1,nan=nan,stdev=stdev) if ndimen(vals) eq 2 then vals= average(vals,1,nan=nan) if keyword_set(dy) then dy = average(dy,1,nan=nan) endif return,val end