For a beginning Matlab plotting project instructions are to use several commands. I used everything except for "subplot" and "hold". Can anyone tell me how I could work it into the following code?:
3 ビュー (過去 30 日間)
古いコメントを表示
%Define parameters of r and functions
r=0:.1:1;
Ea=-1.436./r;
Er=(5.86.*10.^-6)./(r.^9);
En=Ea+Er;
%plot functions with given r values
plot(r,Ea,'--',r,Er,'-',r,En,':')
%set axis according to the best fit for pertinent information
axis ([0 1 -15 15]);
%Display equations on graph, modified according to in-class example
text(.20,-10,'Ea=$\displaystyle\frac{-1.436}{r}$','interpreter','LaTeX') text(.7,3,'Er=$\displaystyle\frac{5.86*10.^-6}{r.^9}$','interpreter','latex') text(.05,0,'En=$En+Ea$,','interpreter','latex')
% Create xlabel
xlabel({'Interatomic Separation,r, nm'});
% Create ylabel
ylabel({'Potential Energy, E'});
% Create title
title({'K.^+ -C.^- Ion Pair, Attractive, Repulsive, and Net Energies'});
% Create textbox
annotation('textbox',... [0.73 0.78 0.17 0.13],... 'String',{'Name','Net id:00000','Feb. 4, 2013'},... 'FitBoxToText','off');
%Create legend, specify location
hleg1=legend('Attractive Force (Ea)','Repulsive Force (Er)','Net Energy (En)'); set(hleg1,'location','SouthEast');
5 件のコメント
Image Analyst
2014 年 2 月 5 日
Then split it into two calls to plot() like Amit showed you. It will plot in two separate graphs/charts, instead of both on one graph.
採用された回答
Amit
2014 年 2 月 5 日
編集済み: Amit
2014 年 2 月 5 日
subplot sections a figure windows in sections For example,
subplot(3,2,1)
Suggest that the figure space is going to be distributed into 3 row and 2 columns (total 3X2 = 6) spaces. The last index (here, 1) suggests which of these spaces you're using right now.
Just to understand, try something like this:
x = 1:10; % Random functions
y1 = 5*x;
y2 = exp(x);
subplot(2,2,1);
plot(x,y1);
subplot(2,2,2);
plot(x,y2);
And see where each of the plots are plotted.
Everytime you call subplot, it is very similar to calling figure. However, figure creates a new figure window and makes that your current figure. Any thing you will plot will be plotted on that figure. Similar to that, when you call subplot, the axes of that section becomes your current axes.
その他の回答 (1 件)
Image Analyst
2014 年 2 月 5 日
subplot() just tells it WHERE to plot. plot() does the actual plotting. Since you have only a single plot, I don't see any reason to use subplot().
hold on tells it not to blow away any existing plot when you plot another one - it will keep both. Since you are not calling plot() more than once, you will not need to use hold.
参考
カテゴリ
Help Center および File Exchange で Subplots についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!