用matlab畫漂亮的sin曲線


Technorati 標記: matlab, plot

相信大部分用過matlab的人都畫過sin曲線,直接plot就可以了,不過呢,plot出來的曲線自然不那么好看,本着繩命在於折騰的原則,小弟學習了下sin曲線的高級畫法,mark一下,還是先上圖看看是如何華麗麗的完整轉變的吧。

imageimage

實現代碼如下:

x = -pi:0.1:pi;y = sin(x);
axescenter
fid1 = plot(x,y);
set(findobj('Type','Line'),'Color','r','LineWidth',2)
set(gca,'ytick',[-1,-0.5,0,0.5,1],'LineWidth',0.1)
xlabel('-\pi \leq \Theta \leq \pi')
ylabel('f(\Theta)','fontname','')
set(gca,'ylim',[-2,2],'xtick',[-pi,-pi/2,0,pi/2,pi],'xticklabel',{'-p','-p/2','0','p/2','p'},'fontname','symbol')
text(-pi/2,sin(-pi/2),'\uparrow f(\Theta) = sin(\Theta)','VerticalAlignment','top','Fontsize',14)

hold on;pp = plot(x,cos(x));
set(pp,'Color','b','LineWidth',2)
text(-0.85,cos(-0.85),'f(\Theta) = cos(\Theta)\rightarrow','VerticalAlignment','bottom','Fontsize',14,'horizontalAlignment','right')

其中為了把坐標軸移動到原點(發現這個才是大問題),使用了網上一份代碼(對比了網上幾個實現方案,個人認為這個代碼最佳)

網址:  http://www.mathworks.com/matlabcentral/fileexchange/22956-axescenter

其他參考matlab幫助: axes, set, gca, xdir, findobj


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM