Permalink
Find file
Fetching contributors…
Cannot retrieve contributors at this time
executable file 44 lines (33 sloc) 1009 Bytes
% lplot(VEC, XRANGE)
%
% Plot VEC, a vector, in "lollipop" format.
% XRANGE (optional, default = [1,length(VEC)]), should be a 2-vector
% specifying the X positions (for labeling purposes) of the first and
% last sample of VEC.
% Mark Liberman, Linguistics Dept, UPenn, 1994.
function lplot(x,xrange)
if (exist('xrange') ~= 1)
xrange = [1,length(x)];
end
msize = size(x);
if ( msize(2) == 1)
x = x';
elseif (msize(1) ~= 1)
error('First arg must be a vector');
end
if (~isreal(x))
fprintf(1,'Warning: Imaginary part of signal ignored\n');
x = abs(x);
end
N = length(x);
index = xrange(1) + (xrange(2)-xrange(1))*[0:(N-1)]/(N-1);
xinc = index(2)-index(1);
xx = [zeros(1,N);x;zeros(1,N)];
indexis = [index;index;index];
xdiscrete = [0 xx(:)' 0];
idiscrete = [index(1)-xinc indexis(:)' index(N)+xinc];
[mn,mx] = range2(xdiscrete);
ypad = (mx-mn)/12; % MAGIC NUMBER: graph padding
plot(idiscrete, xdiscrete, index, x, 'o');
axis([index(1)-xinc, index(N)+xinc, mn-ypad, mx+ypad]);
return