Cant see the line in my plot
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Ruger28
2019-9-24
编辑:Ruger28
2019-9-24
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.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Earth and Planetary Science 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!