Matlab中的数据绘图
我有两个数组,X和Y的维数相同。我可以通过Matlab中的数据绘图,matlab,plot,Matlab,Plot,我有两个数组,X和Y的维数相同。我可以通过plot(x,y)来绘制每个点(x,y)。但是如何根据给定的标签给它们上色呢 假设X=[3,4,2,5,6],Y=[2,2,1,5,6],label=[1,2,2,1,2]。这里我要做的就是用蓝色给标签=1的点上色,用红色给标签=2的点上色。我怎样才能做到这一点?有几种方法可以优化此代码,甚至不使用循环就可以脱身,但这应该可以让您开始 for i=1:length(X) xdot=X(i) ydot=Y(i) Ldot=label
plot(x,y)
来绘制每个点(x,y)。但是如何根据给定的标签给它们上色呢
假设X=[3,4,2,5,6],Y=[2,2,1,5,6],label=[1,2,2,1,2]。这里我要做的就是用蓝色给标签=1的点上色,用红色给标签=2的点上色。我怎样才能做到这一点?有几种方法可以优化此代码,甚至不使用循环就可以脱身,但这应该可以让您开始
for i=1:length(X)
xdot=X(i)
ydot=Y(i)
Ldot=label(i)
col=[1 0 0;0 0 1];
plot(xdot,ydot,'color',col(Ldot,:),'marker','o');
hold on
end
查看
scatter()
。另外,label=[1,2,2,1,2,2]
是什么意思,特别是[1,2]部分?@Oleg label是一个单元格数组。这里的[1,2]表示该点属于两个标签。我不完全确定我是否理解这个问题,但a是否有效?通过说等一下
,您可以根据您希望数据的颜色在同一屏幕上绘制不同的绘图。那么标签[1,2]的颜色是什么?