2014-10-19 26 views
-1

我有一个600 * 2数组在MATLAB可以称之为tmp 什么在一个点开始是如何忽略零个域在MATLAB的情节

-22222 0 
-22222 0 
-22222 0 
-22222 0 

我的代码是

plot(tmp(:,2),tmp(:,1)) 

我怎样才能让它忽略包含0的行?

回答

0

首先,你可以删除零行是这样的:

tmp(tmp == 0) = []; 

然后plot(tmp(:,2),tmp(:,1))

+0

did not work ... sry – JohnnyF 2014-10-19 07:29:54

0

你可以做一个新的矩阵,只有tmp非零元素:

nonzero_rows = find(tmp(:,2) ~= 0); 
    tmp2 = tmp(nonzero_rows,;); 

然后阴谋tmp2而不是tmp

+0

不需要'使用'查找。直接使用逻辑索引:'nonzero_rows = tmp(:,2)〜= 0; tmp2 = tmp(nonzero_rows,:);' – 2014-10-19 12:40:39