MATLAB: The legend show different sign

legendMATLAB

Hello, I try to plot my graph and also do the legend. However, the legend show a different type of symbol. The example of my code is as below. However when I run my simulation, both current and voltage have symbol ro.
figure(1) hold on
for ii=1:N voltage… resistance.. .. xx(ii) = ii; plot(ii,voltage, 'ro'); end
plot(xx,current, 'rx'); legend('voltage','current',2);

Best Answer

This is because you are plotting data in a loop, and will make N plots with symbol 'ro'. Therefore, also the first N entries in the legend will have 'ro'.
You can fix this by collecting all voltage data in one array, and create a single plot. If that is not possible due to the structure of the data, you can set the handleVisibility to 'off' for all voltage plots with ii > 1. This means they will be skipped in the legend.