Learn R Programming

seewave (version 1.7.6)

oscillo: Show a time wave as an oscillogram

Description

This graphical function displays a time wave as an oscillogram in a single or multi-frame plot. The envelope of the wave can also be shown.

Usage

oscillo(wave, f, from = NULL, to = NULL, scroll = NULL,
zoom = FALSE, k=1, j=1, cex,
labels = TRUE,  tlab = "Time (s)", alab = "Amplitude",            
byrow = TRUE,
identify = FALSE, plot = TRUE, colwave = "black", 
coltitle = "black", cextitle = 1.2,
fonttitle = 2, collab = "black",
cexlab = 1, fontlab = 1, colline = "black", 
colaxis = "black", cexaxis = 1, coly0 = "lightgrey",
tcl = 0.5, title = FALSE, xaxt="s", yaxt="n", type="l", bty = "l")

Arguments

wave
an R object.
f
sampling frequency of wave (in Hz). Does not need to be specified if embedded in wave.
from
start of the oscillogram (in s).
to
end of the oscillogram (in s).
scroll
a numeric of length 1 allowing to move along the time wave using a slider panel. This numeric corresponds to the number of successive windows dividing the time wave.
zoom
time zoom in with start and end points chosen on the oscillogram with a cursor.
k
number of horizontal sections (by default =1).
j
number of vertical sections (by default =1).
cex
Pitch size if type.
labels
if TRUE plots time and amplitude labels (by default TRUE).
tlab
Label of time axis.
alab
Label of amplitude axis.
byrow
logical, if TRUE, the sections are filled by rows, otherwise the sections are filled by colmuns (by default TRUE).
identify
returns the time and amplitude coordinates of points chosen with a cursor on the oscillogram.
plot
logical, if TRUE returns an oscillographic or envelope plot of wave(by default TRUE).
colwave
colour of the oscillogram or of the envelope.
coltitle
if title is TRUE, colour of the title.
cextitle
character size for the title.
fonttitle
font for the title.
cexlab
character size for axes title.
fontlab
font for axes title.
collab
colour of axes title.
colline
colour of axes line.
colaxis
colour of the axes.
cexaxis
magnification for axes annotation.
coly0
colour of the y=0 line.
tcl
length of tick marks.
title
TRUE to add a title with information on wave duration and f, FALSE to live it blanck, or a character string to add any desired title.
xaxt
equivalent to xaxt of par (by default ="s").
yaxt
equivalent to yaxt of par (by default ="n").
type
type of plot, by default "l". Use "n" for no plot.
bty
the type of box to be drawn around the oscillogram.

Value

  • Data are returned as one-column matrix if plot is FALSE. identify returns a two-column matrix with the time and amplitude coordinates of points successively chosen on the oscillogram.

See Also

dynoscillo, oscilloST, cutw, pastew, timer

Examples

Run this code
data(tico)
# a simple oscillogram of a bird song
oscillo(tico,f=22050)
# zoom in
op<-par(mfrow=c(4,1),mar=c(4.5,4,2,2))
oscillo(tico,22050,cexlab=0.75)
oscillo(tico,22050,from=0.5,to=0.9,cexlab=0.75)
oscillo(tico,22050,from=0.65,to=0.75,cexlab=0.75)
oscillo(tico,22050,from=0.68,to=0.70,cexlab=0.75)
par(op)
# the same divided in four lines
oscillo(tico,f=22050,k=4,j=1)
# the same divided in different numbers of lines and columns
oscillo(tico,f=22050,k=4,j=4)
oscillo(tico,f=22050,k=2,j=2,byrow=TRUE)
oscillo(tico,f=22050,k=2,j=2,byrow=FALSE)
# overplot of oscillographic and envelope representations
oscillo(tico,f=22050)
par(new=TRUE)
env(tico,f=22050,colwave=2)
# full colour modifications in a two-frame oscillogram
op<-par(bg="grey")
oscillo(tico,f=22050,k=4,j=1,title=TRUE,colwave="black",
    coltitle="yellow",collab="red",colline="white",
    colaxis="blue",coly0="grey50")
par(op)
# change the title
data(orni)
oscillo(orni,f=22050,title="The song of a famous cicada")
# move along the signal using scroll
require(rpanel)
oscillo(tico,f=22050,scroll=8)

Run the code above in your browser using DataLab