How can I plot multiple signals in a single plot? Please give me suggestions which functions have used for this.
12 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen

0 Kommentare
Akzeptierte Antwort
Chunru
am 23 Nov. 2023
Bearbeitet: Chunru
am 23 Nov. 2023
% Generate som data
fs = 1000;
t=(0:1/fs:1)';
f = 10:10:40;
x = sin(2*pi*t*f);
x = x + 0.1*randn(size(x));
n = size(x, 2); % num of channels
yyaxis left
s = 0.4; % scale factor
plot(t, s*x + (0:n-1) );
yticks(-1:n)
yticklabels(["" "abc" "def" "a" "b" ""])
yyaxis right
ylim( [-1 n]/s)
yticks( [0 1]/s)
5 Kommentare
Dyuman Joshi
am 26 Nov. 2023
@Walter Roberson has already mentioned a function below. Did you try that?
Weitere Antworten (1)
Walter Roberson
am 24 Nov. 2023
See stackedplot
4 Kommentare
Walter Roberson
am 27 Nov. 2023
Bearbeitet: Walter Roberson
am 27 Nov. 2023
Create a timetable() object with variable names {'Input Signal', 'Clean Signal', 'Artifact'} and with 'RowTimes' set to the time vector.
Now stackedplot() that timetable object.
For example,
TT = timetable(input_signal(:), clean_signal(:), artifact(:), 'VariableNames', {'Input Signal', 'Clean Signal', 'Artifact'}, 'RowTimes', t);
stackedplot(TT);
Siehe auch
Kategorien
Mehr zu 2-D and 3-D Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




