Cant see the line in my plot
1 view (last 30 days)
Show older comments
for H=200:100:36000 %For loop created for the Height of the satellite
Gc = 398000.5 %Gravitational Constant times Earth's Mass
Re = 6371 %Radius of Earth
V = sqrt(Gc/(Re+H)) %Formula for calculating the Satellite Speed
hold on %Allows to plot multiple times on the same graph
plot(H, V,'-b') %Plot the Height with respect the Speed
end
ylabel('Orbital Speed (Km/S)'), xlabel('Height (Km)') %Labels on each axis
grid on %Grid added for easier understanding of data
My code works but i dont get the plot line when i run this..
0 Comments
Accepted Answer
Ruger28
on 24 Sep 2019
Edited: Ruger28
on 24 Sep 2019
Don't use plot if you are trying to plot each H vs V value. Use Scatter
for H=200:100:36000
Height(H) = H;
Gc = 398000.5; %Gravitational Constant times Earth's Mass
Re = 6371; %Radius of Earth
V = sqrt(Gc/(Re+H)); %Formula for calculating the Satellite Speed
scatter(H, V);
hold on %Allows to plot multiple times on the same graph
%Plot the Height with respect the Speed
end
ylabel('Orbital Speed (Km/S)'), xlabel('Height (Km)') %Labels on each axis
grid on
A more effifient way, and the better answer is this:
clear all;
figure;
Gc = 398000.5;
Re = 6371;
cntr = 1;
for H=200:100:36000
V(cntr) = sqrt(Gc/(Re+H))
Height(cntr) = H;
cntr = cntr + 1;
end
plot(Height,V)
ylabel('Orbital Speed (Km/S)');
xlabel('Height (Km)');
grid on;
The problem in your script is that you are plotting a single point, rather than a set of x&y values. Scatter plots a single point better.
The second bit of code is most likely what you are looking for.
More Answers (0)
See Also
Categories
Find more on Earth and Planetary Science 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!