Я пытаюсь построить некоторые данные следующим образом:Matlab показывают только некоторые элементы легенды
figure(2);
l = plot(1:50,data_a(:,2),1:50, data_a(:,2), 'b*');
set(l,'Color','red');
hold on;
lb = plot(1:50,data_b(:,2),1:50, data_b(:,2), 'b*');
set(lb, 'Color', 'blue');
hold on;
lc = plot(1:50,data_c(:,2),1:50, data_c(:,2), 'b*');
set(lc, 'Color', 'green');
hold on;
ld = plot(1:50,data_d(:,2),1:50, data_d(:,2), 'b*');
set(ld, 'Color', 'cyan');
legend([l,lb,lc,ld], 'A', 'B', 'C', 'D');
Если я просто использовать
legend('show')
Это будет также включать пункты, сделанные в тексте() функции, которую я не хочу. Следовательно, почему в последней строке я указываю, что мне нужны только элементы l, lb, lc и ld (графики), которые будут включены в легенду.
Это соответствует инструкциям given on the MathWorks site.
Однако, он возвращает ошибку, как:
Error using legend (line 120)
Operands to the || and && operators must be convertible to logical scalar values.
Error in visualizer (line 33)
legend([l,lb,lc,ld], 'A', 'B', 'C', 'D');
Любые советы?
Ваши ручки не являются скаляры. Вы планируете две вещи при каждом вызове 'plot'. – horchler