Output a plot and a matrix from a function

6 Ansichten (letzte 30 Tage)
Miranda Gabriel
Miranda Gabriel am 21 Apr. 2022
Beantwortet: Sam Chak am 21 Apr. 2022
I want to outout both a plot that requires two built in functions (plot() and findpeaks() ) and also a matrix that gives the locations, heights, and peak to peak interval. As this function stands, it only outputs the graph. is there anyway to get it to output the matrix as well?
function [myplot,mypeaks,mymatrix] = peaks(d)
myplot = plot(1:length(d), d);
mypeaks = findpeaks(d,'MinPeakDistance',50, 'MinPeakHeight', 10);
[height,locs] = findpeaks(d,'MinPeakDistance',50, 'MinPeakHeight', 10);
pp = [];
for i = 1:length(locs)-1
pp(i) = locs(i+1)-locs(i);
end
pp = [0, pp];
mymatrix = [locs(:), height(:), pp(:)];
end

Antworten (1)

Sam Chak
Sam Chak am 21 Apr. 2022
Remove the semicolon ";" in this line should produce mymatrix on the Command Window.
mymatrix = [locs(:), height(:), pp(:)]

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by