Info
此问题已关闭。 请重新打开它进行编辑或回答。
how shalll I swith to different Axes in one figure?
1 次查看(过去 30 天)
显示 更早的评论
figure;
H1=axes;
plot(x1,y1);(after that insert its legend on the figure)
H2=axes;
plot(x2,y2);(after that insert its legend on the figure)
H3=axes;
plot(x1,y1);(after that insert its legend on the figure)
After that I set "color" of "H2" and "H3" to be 'none';
Now I can see the three "lines" together and I want to rearrange the three "legends" (I find I just can move legend3) and add x-axis lable for H2 (I find I can't insert x-label for H2). How shall I?
0 个评论
回答(1 个)
Walter Roberson
2016-8-10
You cannot legend() all of the entries individually to get a combined legend. You need to legend() at the end. Better yet would be to record the handles of each of the plots and pass the array of those handles as the first entry to legend(). Also, each of those axes() calls is causing everything before that to be erased because you are not using "hold on". You should consider using subplot()
fig = figure;
H1 = subplot(1, 3, 1, 'Parent', fig);
L(1) = plot(H1, x1, y1, 'r');
H2 = subplot(1, 3, 2, 'Parent', fig);
L(2) = plot(H2, x2, y2, 'b');
H3 = subplot(1, 3, 3, 'Parent', fig);
L(3) = plot(H3, x1, y1, 'g');
legend(L, {'first plot', 'second plot', 'third plot'})
1 个评论
此问题已关闭。
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!