用于大量测量的MATLAB Box Plot

时间:2014-10-13 09:13:27

标签: matlab boxplot

我基本上有三组测量,我试图生成一个带有4个Box的BoxPlot。每个组一个框,最后一个框加入所有组。

我尝试过这段代码

A = rand(1417725,1)
B = rand(2236508,1)
C = rand(3100641,1)
D = [A;B;C]

X= [A;B;C;D]

group = [repmat({'a'},1417725,1); repmat({'b'},2236508,1); repmat({'c'},3100641,1); repmat({'d'},6754874,1)];

boxplot(X,group)

但最后我得到“内存不足”,我无法得到情节。

你有什么想法解决这个问题吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

不是创建一个庞大的(在内存方面)字符串的单元格数组,而是创建一个更小的数组,例如int8整数:

group = [ones(size(A),'int8');2*ones(size(B),'int8');3*ones(size(C),'int8');4*ones(size(D),'int8')];

然后,在绘图后,将绘图中的标签更改为所需的名称:

set(gca, 'XTick', 1:4, 'XTickLabel', {'a','b','c','d'});

也许你有足够的记忆力来这样做..

相关问题