graph wont display on a simple code

1 vue (au cours des 30 derniers jours)
Wan Muhammad Haikal Bin Wan Mohd Nadzri
Modifié(e) : Rik le 26 Juin 2021
helo everyone, im not good at using Matlab. Hence, i need help on my coding. It is a simple code that just loops and adds the value of m for every loop and n is used as a counter. But why wont it display the graph? im planning on making the graph with m as the x axis and P as the y axis. Thank you so much everyone. Here is the coding:
m=input("input mass");
n=0;
while n<10
P=12.34321*m;
plot(m,P)
grid
pause(0.0001)
disp(m)
disp(P)
m=m+50;
n=n+1;
end
  8 commentaires
Kent Millard
Kent Millard le 25 Juin 2021
Thanks Rik--we will definitely be taking you up on your offer. :)
Thanks as always for all that you do in the Community.
Rik
Rik le 26 Juin 2021
@Wan Muhammad Haikal Bin Wan Mohd Nadzri What is your goal here? I can trivially restore your question from the archive link I posted. Are you trying to find out if you're more stubborn than me? Are you trying to avoid your teacher finding this and figuring out you cheated on your homework?
What is the reason for your edits and deletions?
graph wont display on a simple code
helo everyone, im not good at using Matlab. Hence, i need help on my coding. It is a simple code that just loops and adds the value of m for every loop and n is used as a counter. But why wont it display the graph? im planning on making the graph with m as the x axis and P as the y axis. Thank you so much everyone. Here is the coding:
m=input("input mass");
n=0;
while n<10
P=12.34321*m;
plot(m,P)
grid
pause(0.0001)
disp(m)
disp(P)
m=m+50;
n=n+1;
end

Connectez-vous pour commenter.

Réponses (2)

KSSV
KSSV le 24 Juin 2021
Modifié(e) : KSSV le 24 Juin 2021
As you are plotting a point, you need to use marker.
m=input("input mass ");
n=0;
figure
hold on
while n<10
P=12.34321*m;
plot(m,P,'.')
grid
pause(0.0001)
disp(m)
disp(P)
m=m+50;
n=n+1;
end
Also you need not to plot in a loop. You can store each value of the loop and plot at the end.
m=input("input mass ");
n=1;
x = zeros(10,1) ;
y = zeros(10,1) ;
while n<10
P=12.34321*m;
disp(m)
disp(P)
x(n) = m ;
y(n) = P ;
m=m+50;
n=n+1;
end
plot(m,P,'.')
  1 commentaire
Rik
Rik le 26 Juin 2021
oh i seeeeee, thank you so much for your help. God bless on your future coding endevours!

Connectez-vous pour commenter.


Chunru
Chunru le 24 Juin 2021
You are plotting point by point. Need to hold on the figure and change the marker for plotting. You may also consider to store the data as array and plot the data in one go,
m=10; %input("input mass");
n=0;
figure; hold on
while n<10
P=12.34321*m;
plot(m, P, 'ro')
grid
pause(0.001)
disp(m)
disp(P)
m=m+50;
n=n+1;
end
10
123.4321
60
740.5926
110
1.3578e+03
160
1.9749e+03
210
2.5921e+03
260
3.2092e+03
310
3.8264e+03
360
4.4436e+03
410
5.0607e+03
460
5.6779e+03
  1 commentaire
Rik
Rik le 26 Juin 2021
oh i never thought of that! thank you so much, friend. We need more heroes like you!

Connectez-vous pour commenter.

Catégories

En savoir plus sur Specifying Target for Graphics Output dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by