0

我在Matlab中使用罗盘图。我需要突出显示幅度级别(因此以罗盘图的原点为中心的圆圈)以强调那些超过该幅度的向量。我怎样才能做到这一点?谢谢!

例子

我的罗盘图非常简单,我只是按照此处显示的方法将一些极坐标转换为笛卡尔坐标。在我的例子中,我显示了风的强度和方向(与我的Mathworks提供的示例非常相似):

wdir = [31.45 21.45 44.67 23.87];
knots = [7.2 4.4 5.3 6.6];
rdir = wdir * pi/180;
[x,y] = pol2cart(rdir,knots);
compass(x,y) 

我需要强调4.0 节的水平,因为当风超过这个强度时,就会发生一些重要的事情。如果你看一下我前段时间的截图(这是我之前写的代码中的罗盘图):

在此处输入图像描述

我想要的是突出显示4级的灰色圆圈虚线。就是这样!

附言

请注意,我不想突出显示向量,而只是想在图中画一个对应于某个幅度的圆圈。就这样。

4

1 回答 1

0

根据您的评论,我找到了一台机器来测试我的代码。

这是我使用的确切代码:

wdir = [31 24 44 23];
knots = [7 4 5 6];
rdir = wdir * pi/180;
[x,y] = pol2cart(rdir, knots);
figure
compass(x,y);

hold on;
theta = linspace(0,2*pi,100);
kLimit = 4.0;
xt = kLimit * cos(theta);
yt = kLimit * sin(theta);
plot(xt, yt, 'r')

这是我得到的输出:

在此处输入图像描述

我不确定为什么它不适合你。我想这就是你所要求的。你能看看这个确切的代码是否适合你吗?如果我仍然误解,请解释一下?

于 2013-04-22T13:52:37.500 回答