用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

posted @   木lin木  阅读(8741)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示