2014-09-05 47 views
1

我想插入的阵列之间在一个空的空间(Matlab的)插入在阵列之间的空的空间

a = [1 2 3 4] 

我想有在索引3的空的空间(在2和3之间), OR我会移动value 3 to 4th index and 4 to 5th index

我想创建一个分组条形图。因此,为了在每个小节中包含单独的“Xticklabels”,我将向量中的所有Xticklabel值连接起来。因此,从一个组到另一个组有一个空的空间,我想避免在组之间插入刻度。

编辑:另外,我们假设a = [0 100 400 0 0 100 400 0 0 100 400 0 0],我需要在输出单元阵列中用empty cells替换所有的零。

+0

你不能有一个*空白*在Matlab中的数组。我不确定它在Matlab中是否有意义,也不知道我熟悉的任何其他编程语言。你为什么要这样?知道为什么可能会帮助读者帮助你实现你的目标而不可能做到不可能,这可能是非常棘手的。 – 2014-09-05 18:30:10

+0

“空白空间”是什么意思?什么是最终目标? – 2014-09-05 18:30:26

+1

'NaN'会满足您对空余空间的需求吗? 'b = [a(1:2)NaN a(3:4)];' – Peter 2014-09-05 18:32:57

回答

0

使用此 -

a_cell = mat2cell(a,1,ones(1,numel(a))) 
a_cell(4:end+1) = a_cell(3:end) 
a_cell{3} = '' 

编辑 -

a = [0 100 400 0 0 100 400 0 0 100 400 0 0] 
a_cell = mat2cell(a,1,ones(1,numel(a))) 
a_cell(a==0) = {''} 
+0

非常感谢... @Divakar – user8162 2014-09-05 19:04:20