Проведение легенды между несколькими сюжетами

Я рисую с разными наборами данных, и все графики находятся на одной оси. Проблема, с которой я сталкиваюсь здесь, заключается в добавлении легенды, и когда я рисую следующий сюжет, легенда первого перезаписывается нашим перекрытием. Как я могу иметь легенды последовательных сюжетов ниже других, а не над

Спасибо


person Lipika Deka    schedule 15.11.2012    source источник


Ответы (1)


Дело в том, что legends создает совершенно новую легенду всякий раз, когда вы вызываете команду. Поэтому вы должны рисовать легенды только один раз.

Вот НЕПРАВИЛЬНЫЙ способ сделать это:

% THIS IS NOT CORRECT
plot(x1, y1, 'r.');   legend('first plot')
plot(x2, y2, 'g.');   legend('second plot')
plot(x3, y3, 'b.');   legend('third plot')
plot(x4, y4, 'k.');   legend('fourth plot')

который создаст четыре перекрывающихся легенды. ПРАВИЛЬНЫЙ способ сделать это будет

plot(x1, y1, 'r.');   
plot(x2, y2, 'g.');   
plot(x3, y3, 'b.');   
plot(x4, y4, 'k.'); 

% only 1 call to legend
legend('first plot', 'second plot', 'third plot', 'fourth plot')  

или, в качестве альтернативы, сохранить сюжет и легенду вместе,

plot(x1, y1, 'r.');   L{1} = 'first plot';
plot(x2, y2, 'g.');   L{2} = 'second plot';   
plot(x3, y3, 'b.');   L{3} = 'third plot';   
plot(x4, y4, 'k.');   L{4} = 'fourth plot'; 

legend(L{:});
person Rody Oldenhuis    schedule 15.11.2012