Octave代码用于绘制标记数据

时间:2015-02-27 03:44:24

标签: matlab plot octave svm

下午好,伙计们。我正在学习SVM并尝试在openclassroom.stanford.edu完成练习。

我的问题是: Octave / Matlab代码如何绘制如下所示 enter image description here

如果我有一组 2D要素点

{(x_11,x_12),(x_21,x_22),...,(x_i1,x_i2)},

并且相应的标签设置为

{1,-1,...,-1},

代码以2D方式绘制这些数据的代码是什么?

我想使(x_i1,x_i2)对应于1(或-1,无论如何)。

非常感谢:)

2 个答案:

答案 0 :(得分:1)

假设您有一个x坐标X和y坐标Y的向量,以及1和-1的指标向量k,您可以这样做

plot(X(k>0),Y(k>0),'b',X(k<0),Y(k<0),'g')

使用逻辑索引分别挑选k=1k=-1元素,或使用scatter并使用k向量为点着色。我将colormap设置为蓝色(k=-1)和绿色(k=1)点。

colormap([0 0 1;0 1 0])
scatter(X,Y,[],k,'filled')

使用plot :(公平地说,您也可以将标记更改为填充点) enter image description here

scatterenter image description here

答案 1 :(得分:0)

这是我的解决方案,有效...

BigDecimal

结果:

enter image description here