Combining multiple plots in 1 graph

1 view (last 30 days)
Qatrisyia Zamzuri
Qatrisyia Zamzuri on 23 May 2019
Edited: madhan ravi on 23 May 2019
clc;
close all;
clear all;
echo on;
a=1;
b=3; %resolution of 3
f=1; %frequency of analog signal
fs=10; %sampling frequency
t=0:1/fs:10; %time axis
x=a*sin(t) + (a/2)*cos(2*t); %sin and cosine wave
subplot(3,1,1);plot(t,x);grid
Nsamples=length(x); %sample number
q_out=zeros(1,Nsamples); %making an array of size=number of samples
%midrise
del=2*a/(2^b); %determining the step size
Ll=-a+del/2;
Lh=a-del/2;
for i=Ll:del:Lh
for j=1:Nsamples %taking the whole sampled vector
if(((i-del/2)<x(j))&&(x(j)<(i+del/2)))
q_out(j)=i;
end
end
end
subplot(3,1,2);plot(t,q_out);grid %plotting wave forms.
Here's my code, how do I plot them on the same graph? I have tried it before but it seems that it does not work.
  1 Comment
Qatrisyia Zamzuri
Qatrisyia Zamzuri on 23 May 2019
How do I plot the original signal and it's two quantized versions in the same graph?

Sign in to comment.

Answers (1)

madhan ravi
madhan ravi on 23 May 2019
Edited: madhan ravi on 23 May 2019
Read this once again:
Use hold on after the first plot() call and indeed remove subplot()
  5 Comments
Qatrisyia Zamzuri
Qatrisyia Zamzuri on 23 May 2019
Sorry, here's my code
clc;
close all;
clear all;
echo on;
a=1;
b=3; %resolution of 3
f=1; %frequency of analog signal
fs=10; %sampling frequency
t=0:1/fs:10; %time axis
x=a*sin(t) + (a/2)*cos(2*t); %sin and cosine wave
%subplot(3,1,1);plot(t,x);grid
Nsamples=length(x); %sample number
q_out8=zeros(1,Nsamples);
q_out16=zeros(1,Nsamples);%making an array of size=number of samples
%midrise
del=2*a/(2^b); %determining the step size
Ll=-a+del/2;
Lh=a-del/2;
for i=Ll:del:Lh
for j=1:Nsamples %taking the whole sampled vector
if(((i-del/2)<x(j))&&(x(j)<(i+del/2)))
q_out8(j)=i;
q_out16(j)=i;
end
end
end
subplot(3,1,2);plot(t,x,'r',t,q_out8,'k',t,q_out16,'m');grid %plotting wave forms.
Qatrisyia Zamzuri
Qatrisyia Zamzuri on 23 May 2019
clc;
close all;
clear all;
echo on;
a=1;
b=3; %resolution of 3
f=1; %frequency of analog signal
fs=10; %sampling frequency
t=0:1/fs:10; %time axis
x=a*sin(t) + (a/2)*cos(2*t); %sin and cosine wave
plot(t,x);grid
hold on
Nsamples=length(x); %sample number
q_out8=zeros(1,Nsamples);
q_out16=zeros(1,Nsamples);%making an array of size=number of samples
%midrise
del=2*a/(2^b); %determining the step size
Ll=-a+del/2;
Lh=a-del/2;
for i=Ll:del:Lh
for j=1:Nsamples %taking the whole sampled vector
if(((i-del/2)<x(j))&&(x(j)<(i+del/2)))
q_out8(j)=i;
q_out16(j)=i;
end
end
end
plot(t,x,'r',t,q_out8,'k',t,q_out16,'m');grid %plotting wave forms.

Sign in to comment.

Categories

Find more on Specifying Target for Graphics Output in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!