library(AFM)
library(ggplot2)
library(plyr)
library(scales)
# Calculate the Power Spectral Density in one dimension
data("AFMImageOfNormallyDistributedHeights")
oneAFMImage<-AFMImageOfNormallyDistributedHeights
# using 32 breaks in the log space to calculate PSD 1D from PSD 2D
psd1d<-PSD1DAgainstFrequency(oneAFMImage, 32)
p <- ggplot(data=psd1d)
p <- p + geom_point(aes(freq, PSD, color=type),subset = .(type %in% c("PSD-2D")))
p <- p + geom_line(aes(freq, PSD, color=type),subset = .(type %in% c("PSD-1D")),size=1.1)
p <- p + scale_x_log10()
p <- p + scale_y_log10( breaks = trans_breaks("log10", function(x) 10^x),
labels = trans_format("log10", math_format(10^.x)))
p <- p + ylab("PSD (nm^4)")
p <- p + xlab("Frequency (nm^-1)")
p <- p + ggtitle(basename(oneAFMImage@fullfilename))
pRun the code above in your browser using DataLab