Я хочу построить несколько кривых, каждая из которых имеет разную длину.Итак, я поместил каждую кривую в виде массива в индексе ячейки Y (это позволяет мне индексировать массивы разных размеров внутри цикла FOR).Я использую «hold all» ниже, чтобы включить каждую итерацию цикла FOR для построения каждого нового массива в массиве ячеек Y внутри одного и того же графика.
hold all;
for i = 1:1:length(maxusers)
time = increment*(0:1:length(Y{i})-1);
plot(time,Y{i,1,:});
end
Хотя использование массива ячеек здесь упрощает построение различных кривых внутри Y, проблема в том, что я создаю легенду.В настоящее время я использую действительно длинную / уродливую инструкцию switch, чтобы охватить все возможные сценарии, но я думаю, должно быть более элегантное решение.
Если у меня есть массив (например, maxusers = 4):
filesize = [10 100 200 300];
Я знаю, что работает легенда Matlab:
legend(num2str(filesize(1)),num2str(filesize(2)),num2str(filesize(3)),num2str(filesize(4)));
но я застреваю, пытаясь создать команду легенды, когда число кривых является переменной, заданной maxusers.Есть идеи?Заранее спасибо.