My plot is not showing a line? Why?
Ältere Kommentare anzeigen
%Plot of net energy,attractive energy and repulsive energy of a two
%isolated ions seperated by a distance
% r is interatomic distance between the ions
clc; clear;
A=1.436; B=7.32*10^-6; n=8;
r = 0:0.1*10^-9:1*10^-9;
Net_Energy = zeros(length(r),1);
Attractive_Energy = zeros(length(r),1);
Repulsive_Energy = zeros(length(r),1);
for i=1:length(r)
Net_Energy(i) = -A/r(i) + B/r(i)^n;
Attractive_Energy(i) = -A/r(i);
Repulsive_Energy(i) = B/(r(i)^n);
end
for i=1:length(r)
plot(r(i),Net_Energy(i),'g')
hold on
plot(r(i),Attractive_Energy(i),'g')
hold on
plot(r(i)*10^9,Repulsive_Energy(i),'g')
hold on
end
Antworten (3)
Eddie
am 26 Jan. 2020
Replace this
for i=1:length(r)
plot(r(i)*10^9,Net_Energy(i),'g')
hold on
end
with
f=figure; ax=axes(f);
plot(ax,r*10^9,Net_Energy,'g');
If you want to plot a line, the data need to be a single input to plot function instead of using a for loop, which would only plot your data points as individual points.
2 Kommentare
Frederick Anokye
am 26 Jan. 2020
Eddie
am 26 Jan. 2020
Remove the for loop, use this instead
plot(r,Net_Energy,'g')
hold on %only need to do it once
plot(r,Attractive_Energy,'g')
plot(r*10^9,Repulsive_Energy,'g')
However, the last plot (Repulsive_Energy) won't appear with the other plots in the same region (since ther previous two plots are in region r, while the last one is in region r*10^9. I suspect this is what you want -
plot(r*10^9,Net_Energy,'g')
hold on %only need to do it once
plot(r*10^9,Attractive_Energy,'g')
plot(r*10^9,Repulsive_Energy,'g')
Walter Roberson
am 26 Jan. 2020
Remove the plotting loop and use
plot(r*10^9,Net_Energy,'g')
1 Kommentar
Frederick Anokye
am 26 Jan. 2020
Frederick Anokye
am 26 Jan. 2020
0 Stimmen
2 Kommentare
Frederick Anokye
am 26 Jan. 2020
Walter Roberson
am 26 Jan. 2020
use semilogy() instead of plot() to make the lines curvy.
To label the lines, use legend()
Kategorien
Mehr zu 2-D and 3-D Plots finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!