如何在Octave [matlab]罗盘图上绘制圆?

3

我有一些向量(矩阵 2 * 64),我以标准方式在罗盘图上绘制。

compass(data)

这张图看起来像这样:

罗盘图

现在我正在对我的数据进行kmeans聚类。聚类后,我有一个由8个中心点(x,y)组成的向量,我想在同一张罗盘图上画出一个直径为R的圆形。
我做的第一件事是使用以下命令在该图上创建新的罗盘层:
compass(centers(:,1), centers(:,2), "o")

"markersize"属性在这里不起作用。绘图的结果是: compass plot with center points 可以看到一些小圆圈(以及一些描述默认箭头的点),但这不是我需要的。
我需要像这样的东西: enter image description here 能否做到这一点?Octave(Matlab)是否允许我们在现有的图形上绘制新的不同类型的对象(如圆)?"
1个回答

4
如果你想绘制圆形时使用普通的图表,那么它可以正常工作。
% # Random data in [-1,1]
x = 2*rand(1,10)-1;
y = 2*rand(1,10)-1;

compass(x,y)
hold on
plot(x,y,'ok','MarkerSize',15,'LineWidth',3)

Compass plot with circles.


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接