【问题标题】:Plot the Centroid of a Dataset in Matlab在 Matlab 中绘制数据集的质心
【发布时间】:2015-04-25 13:08:54
【问题描述】:

在 matlab 中,我使用 X1、Y1、Z1 轴绘制了一个图形

h=plot3(X1,Y1,Z1,'y*');

X1,Y1Z1 是具有形状的行矩阵。现在我想强调由同一图中每个行矩阵的平均值组成的点(x,y,z)。如何以锐利或彩色突出平均点,避免被行矩阵点覆盖。我真的很想要关于 matlab 的源程序,比如plot3()

【问题讨论】:

  • 告诉我是否可以这样做!

标签: matlab matrix


【解决方案1】:

所以您想突出显示集群的质心。您可以使用以下代码来完成。

x1 = rand(10,1);
y1 = rand(10,1);
z1 = rand(10,1);

plot3( x1, y1, z1, 'y*' );
hold on;
scatter3( mean( x1 ), mean( y1 ), mean( z1 ), 'r' );
hold off;

您可以使用scatter3 使用“r”参数将点绘制为红色。圆圈最适合这项工作,因为它是空心的,所以不会被覆盖。您可以使用 Matlab 内置的不同的colorsmarkers

这是结果

除非你正在绘制轨迹,如果你正在绘制点,我建议你使用scatter3而不是plot3。它给出了以下情节。

我还建议使用蓝色而不是黄色以获得更好的可见度。

【讨论】:

  • 这也可以。 plot3 或 scatter 都可以绘制您的数据,但您说您使用了 plot3... 只需使用 scatter 来绘制质心。
  • 这就是为什么我说“除非你正在绘制轨迹,如果你正在绘制点,我建议你使用 scatter3 而不是 plot3。它给出了以下情节。”
猜你喜欢
  • 2011-02-08
  • 2017-04-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多