- 积分
- 2647
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2018-4-3
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
matlab中利用rose或polarhistogram画极坐标直方图,极坐标轴的方向为向右为正、逆时针旋转,与风场中常用的方向有所不同。
画图时为了解决这个问题翻了很多帖子,若使用rose()命令,可以用view(90,-90)旋转,但是view不可以设置最大极径。
而使用polarhistogram好像只能通过修改polar函数脚本解决(也可能是我没有找到正确的方法= =)。
如果不修改polar脚本,用90°减去原来的角度制数据,然后修改坐标轴label也可以完成对极坐标轴的旋转。
不知道这个小tips有没有人提出过,对于研究了一下午如何旋转的我来说算是个重大发现。。
希望各位大神能帮忙看看是否存在问题?或者希望能帮到也被同样问题困扰的朋友。。
- dir=90.-all0(:,2); %%90-角度制数据
- dir=dir*pi/180; %%转换为弧度制
- polarhistogram(dir,12)
- pax = gca;
- angles = 0:30:360;
- pax.ThetaTick = angles;
- labels = {'E',' ',' ','N',' ',' ','W',' ',' ','S',' ',' '};
- pax.ThetaTickLabel = labels;
- rlim([0 2000]) %%修改半径范围
复制代码
修改前:
修改后:
|
|