MATLAB: Problem with the legend for the multiple axes.

legendmultiple axes

Hi everyone, I am plotting two graph using multiple axes option, the problem i am having now is with the legend. It is displaying only the first graph but not the for the second graph. I am doing it in this way,
hold on;
line(channels1,cabschusage_percent,'Color','k')
ax1 = gca; % current axes
ax1_pos=get(ax1,'Position');
ax2 = axes('Position',ax1_pos,'XAxisLocation','top',...
'YAxisLocation','right',...
'Color','none');
line(channels2,hbschusage_percent,'Parent',ax2,'Color','r');
set(ax2,'XColor','r');
set(ax2,'YColor','r');
legend('CABS Channel Usage', 'HBS Channel Usage');
grid on;
axis tight;
hold off;

Best Answer

The axes legend is a child of the axes and therefore it does not know about the line on the other axes. One thing you consider is just using the plotyy(...) function.