Я хотел бы иметь возможность создать легенду с заданным количеством столбцов (по умолчанию функция легенды имеет уникальный столбец в Matlab). Например, в приведенном ниже коде мне нужно три столбца в легенде, чтобы в нем было две строки и три строки столбца.
X = 0:pi/100:0.25*pi;
Y1 = sin(X);
Y2 = cos(X);
Y3 = tan(X);
Y4 = 0.5;
fh = figure('toolbar','none','menubar','none','Units','characters');
Pan1 = uipanel(fh,'Units','normalized','Position',[0 0 0.5 1],'title',...
'Panel1');
Pan2 = uipanel(fh,'Units','normalized','Position',[0.5 0 0.5 1],'title',...
'Panel2');
haxes = axes('Parent',Pan2,'Units', 'normalized','Position',...
[0.125 0.1 0.75 0.75]);
hplot = plot(haxes,X,Y1,X,Y2,X,Y3,X,Y4);
xlabel(haxes,'Time (second)');
ylabel(haxes,'Amplitude (meter)');
title(haxes,'Trigonometric functions');
Ley = {'Sine function','Cosine function','Tangent function','Constant'};
legend(haxes,Ley,'Location','SouthOutside');
Я пытался использовать приложение под названием gridlegend на Matlab File Exchange , заменяющем
legend(haxes,Ley,'Location','SouthOutside');
с
gridLegend(hplot,2,Ley,'Location','SouthOutside');
и
gridLegend(hplot,3,Ley,'Location','SouthOutside');
Однако полученные результаты являются недействительными, поскольку содержание легенды выглядит перекрывающимся и включающим, для случая 3, неверное.
P.D. Я также пробовал приложение под названием columnlegend на Matlab File Exchange , но мне нужно, чтобы это расположение легенды было SouthOutside, поэтому оно не работает для меня.