matlab ploar,如何在Matlab极坐标polar绘图上增加刻度单位

如何在Matlab极坐标polar绘图上增加刻度单位

一直以来,想在极坐标上面增加刻度,不知道该如何更改,经常是手动加入,费时费力。今天突然想起来为何不能通过修改Matlab的已知源代码,去更改呢?百度了之后,找到了以下的文章:

先不看文章,先来看Matlab默认绘制出来的效果图:

命令如下:

t = 0 : .01 : 2 * pi;

polar(t, sin(2 * t) .* cos(2 * t), '--r');

a4c26d1e5885305701be709a3d33442f.png

那么问题来了,我想在0到360上面增加度的标记,即“°”,在0.1,0.2……上面增加微米标记,即μm。那么我们查找Maltab的代码。在命令窗口敲出polar,然后双击选中,右键选择打开该命令。

a4c26d1e5885305701be709a3d33442f.png

打开后,找到第153(int2str(i*30))和161(loc)行,即为我们想要增加的度的标示部分:

a4c26d1e5885305701be709a3d33442f.png

更改为如下程序:

a4c26d1e5885305701be709a3d33442f.png

第二部分的修改,找到第136行:

a4c26d1e5885305701be709a3d33442f.png

修改为:

a4c26d1e5885305701be709a3d33442f.png

大功告成。注意,我们尽量不去修改Matlab原始的代码,所以我们这里将整个修改后的程序另存为:Mypolar.m。下面我们看一下修改后的绘图效果:

命令如下:

t = 0 : .01 : 2 * pi;

Mypolar(t, sin(2 * t) .* cos(2 * t), '--r');

a4c26d1e5885305701be709a3d33442f.png

同理,我们还可以用类似的方法修改相应代码,得到我们想要的效果。

最后,还是那句话:多看Matlab Help!多看Matlab

Help!多看Matlab

Help!

参考:

matlab极坐标图改变坐标系标注

作者

这两个命令的角度是定死的,没有提供任何接口去修改。你一定要改,就只能改这两个命令的源代码了

a4c26d1e5885305701be709a3d33442f.png打开polar.m后可以找到下面这段语句% plot spokes

th =

(1:6)*2*pi/12;

cst =

cos(th); snt = sin(th);

cs = [-cst;

cst];

sn = [-snt;

snt];

line(rmax*cs,rmax*sn,'linestyle',ls,'color',tc,'linewidth',1,...

'handlevisibility','off','parent',cax)把th改成别的值就可以绘制不同的角度了,比如改成th

= (1:4)*2*pi/8;就是45度的分割线了。当然下面还要继续改显示的度数% annotate spokes in degrees

rt =

1.1*rmax;

for i =

1:length(th)

text(rt*cst(i),rt*snt(i),int2str(i*30),...

'horizontalalignment','cente

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值