我正在绘制可变数量的行。
行数是两个其他数字的乘积,因此(例如)对于所有前缀A
和所有后缀B
,我绘制
['A(i)','B(j)']
。
我可以使用字符串'-'
,':'
,'--'
,'-.'
来设置线型 - 我希望使用这些线条按{{{}}中的索引来分隔线条1}}。
我可以使用A
,'g'
,'b'
等字符串设置线条颜色。
使用'r'
或switch
循环设置这些并不是那么难。
是否可以'乘以'两个单元格以形成一个字符串/单元格,其中包含指定所有行类型所需的完整字符串/单元格?
如果我有
for
我怎样才能获得
lineType = {'-',':','--','-.'};
lineColor = {'g','b','r'};
简单的解决方案(如果有内置或更好的解决方案,请告诉我)
lineString = {'g-','g:','g--','g-.',...
'b-','b:','b--','b-.',...
'r-','r:','r--','r-.'};
答案 0 :(得分:2)
我有另一种解决方案。使用repmat
消除for
循环的需要,并使用cellfun
执行字符串的连接。您需要将UniformOutput
中的cellfun
设置为false,因为输出既不是标量单元数组,也不是标量结构,也不是标量值。
lineType_ = repmat(lineType, size(lineColor,2), 1);
lineColor_ = repmat(lineColor', 1, size(lineType,2));
lineString = cellfun(@horzcat, lineColor_, lineType_, 'UniformOutput', 0);
答案 1 :(得分:2)