【发布时间】:2011-04-21 16:12:48
【问题描述】:
如何在 MATLAB 中绘制如下图?
我不需要标签,所以你可以忽略它们。我尝试使用普通的 2D 图,为每个数据点提供 0 到 y 参数。它确实有帮助,但大部分情节仍然是空的/白色的,我不希望这样。
我该如何解决这个问题?
编辑:
这就是我的绘图方式(玩弄 ylim 的值没有帮助):
hold on
for i=1:120
if genders(v_labels(i)) == CLASS_WOMAN
plot(v_images_lda(i,:) * w_lda,0,'r*');
else
plot(v_images_lda(i,:) * w_lda,0,'b.');
end
end
title('LDA 1D Plot');
ylim([-0.2 0.2]);
hold off
【问题讨论】:
-
如果您正确地将 y 参数设置为 0,那么您的“空/白”问题可能不是由绘图功能引起的。你能提供更多信息和一些代码吗?
-
我正在研究一种两级性别分类算法。我使用线性判别分析(LDA)将维度减少到 1,并且我想很好地绘制它。简单地说,我有一组数字要绘制在 X 轴上。
-
@kolisivra 好吧,我不想指出显而易见的问题,但是您是否尝试过打印出您要绘制的数据集以确保一切正常?
-
@P.R. “按顺序”是什么意思?
-
@kolistivra 因为您没有任何垃圾,并且正在绘制的数据集实际上是二维的。在绘制之前尝试将 v_images_lda(i:) * w_lda 放在临时变量中。这样您就可以查看 temp 变量并查看实际绘制的内容。