Wave Scaling individual columns of a 2D wave
izishaw
I work a lot with files that are essentially tab delimited tables of data. I load the files into a 2D wave. A couple of the columns represent date and time while the other columns represent measured values. I am wondering if it is possible to use wave scaling to assign date and time property to say column 1 & 2 and leave everything else as numeric?
Thanks
Izi
No. There is only one X scaling for a wave no matter its dimensionality.
If your date/time values are evenly spaced then you should use the starting date/time value and delta value to set the X scaling of the 2D wave.
If they are not evenly-spaced then you should load the date/time data into a separate 1D wave. Since date/time data must be double-precision but other data does not require that, you should call LoadWave /D using the /L flag to load just the date and time columns which I assume are first. Then call LoadWave again using the /L flag to skip the date and time column.
You should combine the data and time waves into one date/time wave. For example:
Make /O /D /N=365 dateTimeWave = date2secs(2012, 1, 1) + p*24*60*60
// Tell Igor this is a date/time wave
SetScale d 0, 0, "dat", dateTimeWave
// Make a time wave where each time is 9:00
Make /O /N=365 timeWave = 9 * 60*60 // 9:00
// Combine date and time
dateTimeWave += timeWave
// The time wave is no longer needed
KillWaves timeWave
// Make some other data
Make /O /N=365 something = gnoise(1)
// Make a graph
Display something vs dateTimeWave
Date/time values are stored in Igor as seconds since January 1, 1904. For details execute:
December 3, 2012 at 11:21 am - Permalink
December 3, 2012 at 11:54 am - Permalink