Hi I used R for the first time yesterday. I wanted to plot the aliasing effect of sampling a 5.5KHz sinusoid at only 8KHz (below the Nyquist limit). So I wrote a small R script that a) plots 1msec worth of a 5.5KHz sin wave b) plots 1msec of the resulting 2.5KHz alias and c) plots the 8 sampling points on the 5.5KHz source wave. I think I have found a bug. The script is as follows:
#truesamplingfreq <- 1000*5.5 freqin1msec = 5.5 #aliassamplingfreq <- 1000*2.5 aliasfreqin1msec = 2.5 drawingpoints = 10000 time = (0:drawingpoints)/drawingpoints signal = sin(freqin1msec*2*pi*(time)) alias = -sin(aliasfreqin1msec*2*pi*(time)) undersamplinginterval = max(time)/8 seq (0, max(time), by=undersamplinginterval) -> undersamplingtimes undersampled = sin(freqin1msec*2*pi*undersamplingtimes) plot(time,signal,type="l", col="blue", xaxs="r", yaxs="r", xlab="Time (msec)", ylab="Signal", main="Aliasing", sub="Sampling 5KHz source (blue) at 8KHz (dots) gives 2.5KHz alias(red)") par(new=TRUE) plot (time, alias, xaxs="r", yaxs="r", type="l", lty=2, col="red", axes=FALSE, xlab="", ylab="") par(new=TRUE) plot(undersamplingtimes, undersampled, pch=16, xaxs="r", yaxs="r", axes=FALSE, xlab="", ylab="", abline(h=0)) The output is given as attachment alias.jpg in which the line through y=0 is offset and all the positive sampling points (black dots) are also offset (interestingly, all the negative points seem to be correct). All the black dots should line up with 8 intersections of the red and blue lines. I don't think the script is wrong because if I double everything up and plot an 11KHz source, its 5KHz alias and 16 sampling points (for 16KHz sampling) everything works as expected (see attachment alias2.jpg) - ie, the line through y=0 is in the right place as are the 16 sampling points. Here's my sessionInfo: R version 2.2.1, 2005-12-20, powerpc-apple-darwin7.9.0 attached base packages: [1] "methods" "stats" "graphics" "grDevices" "utils" [6] "datasets" "base I'm running OS X 10.4.5 Can anyone enlighten me? Cheers Paul
______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html