[solved] -- As always, the solution is simple and I always feel foolish for not having seen it right away.
Thank you, John, for showing that the frequency data can be "converted" to log before the linear approximations are made.. once the linear approximations are done with log data, the approximations can be plotted into the "log=x" plot and everything is spot on :-) Here is the updated code that does exactly what I had originally wanted: freq <- c(2, 3, 5, 10, 50, 100, 200, 300, 500, 750, 1000, 1300, 1800, 2450, 2900, 3000, 4000, 5000, 6000, 7000, 8200, 9300, 10000, 11000, 18000, 26500, 33000, 40000); mag <- c(1.9893038, 1.5088071, 1.1851947, 0.9444483, 0.7680123, 0.7458169, 0.7069638, 0.6393066, 0.6261539, 0.6263381, 0.7053774, 0.6900626, 0.6953527, 0.7843036, 0.9056359, 0.8867276, 0.8937421, 0.9492288, 0.9629118, 1.1972268, 1.0010515, 0.9945838, 1.0564356, 0.8733333, 1.1666667, 1.5366667, 1.4666667, 1.3166667); flog <- log(freq); plot(exp(flog),mag,type="b",log="x"); for(i in 1:2000){ xx <- runif(1,min(flog),max(flog)); yy <- approx(flog,mag,xout=xx, method = "linear"); points(exp(xx),yy$y,col=rgb(1,0,0)); } Thank you! -Rich ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.