Learn R Programming

seewave (version 1.5.5)

dBscale: dB colour scale for a spectrogram display

Description

This function displays a vertical or horizontal dB colour scale to be used with spectro plots.

Usage

dBscale(collevels, palette = spectro.colors, side = 4,
textlab = "Amplitude(dB)", cexlab = 0.75,
fontlab = 1, collab = "black", colaxis = "black",...)

collevels{a set of levels which are used to partition the amplitude range of the spectrogram (in dB).} palette{a color palette function to be used to assign colors in the plot, see note.} side{side of the axis.} textlab{text of the label.} cexlab{character size of the label.} fontlab{font of the label.} collab{colour of the label.} colaxis{colour of the axis.} ...{other axis arguments.}

[object Object],[object Object]

This function, based on filled.contour by Ross Ihaka, is not supposed to be used by itself but as a legend of spectro. Any colour palette can be used. In particular, it is possible to use other palettes coming with seewave: rev.gray.colors.1, rev.gray.colors.2, rev.heat.colors, rev.terrain.colors, rev.topo.colors, rev.cm.colors corresponding to the reverse of heat.colors, terrain.colors, topo.colors, cm.colors.

spectro.

data(pellucens) # place the scale on the left and not on the right as spectro() does def.par <- par(no.readonly = TRUE) layout(matrix(c(1, 2), nc = 2), widths = c(1, 5)) par(mar=c(5,3,4,2)) dBscale(collevels=seq(-30,0,1),side=2) par(mar=c(5,4,4,2)) spectro(pellucens, f=22050,wl=512,scale=FALSE) par(def.par) # place the scale on the top and not on the right as spectro() does def.par <- par(no.readonly = TRUE) layout(matrix(c(0,1,2,2), nc = 2, byrow=TRUE),widths=c(1,2),heights=(c(1,5.5))) par(mar=c(0.5,3,4,2)) dBscale(collevels=seq(-30,0,1), textlab = "",side=3) mtext("Amplitude (dB)",side=2,line = 1,at=0.6,cex=0.75) par(mar=c(5,4,0.5,2)) spectro(pellucens, f=22050,wl=512,scale=FALSE) par(def.par)

dplot ts

Arguments