why i am getting blank plot

% PAM Modulation
M_pam = [2, 4, 8]; % Order of PAM modulation
for i = 1:length(M_pam)
% Generate random binary data
data = randi([0 M_pam(i)-1], 10, 1);
% PAM modulation
mod_signal = pammod(data, M_pam(i));
% Plot passband waveform
figure;
plot(mod_signal);
title(['Passband PAM Modulation, M = ', num2str(M_pam(i))]);
% Plot signal space representation (I-Q)
figure;
scatterplot(mod_signal, 1, 0, 'b*');
title(['Signal Space Representation (I-Q) for PAM, M = ', num2str(M_pam(i))]);
end

3 Comments

Check the edit above - I don't see any blank plots.
i was getting 6 plots 3 blank plots , but after removing figure it resolved
How can you have 9 plots when you have only defined 3*2 == 6 plots?

Sign in to comment.

 Accepted Answer

Mann Baidi
Mann Baidi on 26 Sep 2023
Edited: Mann Baidi on 26 Sep 2023
Hi Pooja,
I understand you are facing issue in plotting graphs in a loop. I would suggest you to remove the "figure" from the "scatter plot" function. You can try this modified code.
M_pam = [2,4,8]; % Order of PAM modulation
for i = 1:length(M_pam)
% Generate random binary data
data = randi([0 M_pam(i)-1], 10, 1);
% PAM modulation
mod_signal = pammod(data, M_pam(i));
% Plot passband waveform
figure
plot(mod_signal);
title(['Passband PAM Modulation, M = ', num2str(M_pam(i))]);
% Plot signal space representation (I-Q)
scatterplot(mod_signal, 1, 0, 'b*');
title(['Signal Space Representation (I-Q) for PAM, M = ', num2str(M_pam(i))]);
end
Hope this helps!

3 Comments

"I understand you are facing issue in plotting graphs in a loop."
There are no issues. OP has claimed that they are getting blank plots, but that is not the case.
it worked thanks a lot
@pooja, There was no problem with your code to begin with.

Sign in to comment.

More Answers (0)

Tags

Asked:

on 26 Sep 2023

Commented:

on 26 Sep 2023

Community Treasure Hunt

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

Start Hunting!