MATLAB:散点图 - 不同形状的点根据位置

问题描述:

我想要构建的图的属性如下:MATLAB:散点图 - 不同形状的点根据位置

该图显示200点。对角线上方的点应该用红色星星和对角线下方的点用蓝色三角形表示。

这是我已经成功至今

x=[0 1]; 
y=[0 1]; 
line(x,y, 'linewidth', 1); 
hggroup = scatter(rand(100,1),rand(100,1)); 
axis tight; 
axis square; 
title('Scatterplot') 

你能帮我是做些什么?提前致谢。

如何:

line([0 1],[0 1], 'linewidth', 1); 
hold on 

x = rand(100,1); 
y = rand(100,1); 
idx = y>x; 

scatter(x(idx),y(idx),'r*'); 
scatter(x(~idx),y(~idx),'b^'); 

axis tight; 
axis square; 
title('Scatterplot') 
+0

这工作完全!请你能解释一下idx是什么,'〜idx'是如何工作的? – 2012-02-15 15:44:14

+0

我知道一个'〜'是一个逻辑NOT,但是它是如何工作的?谢谢 – 2012-02-15 15:48:41

+1

idx是一个逻辑数组,指示y的哪些值> x。 〜idx是与之相反的,所以y Jonathan 2012-02-15 15:50:53