Multiple plots with same Legend
古いコメントを表示
Hi colleagues, Is there a way to group different subplots with one legend. for example, I have two subplots as [subplot(1,2,1 and subplot(1,2,2)], is it possible to use the same legend for both?
Thanks in advance,
採用された回答
その他の回答 (2 件)
Update
The graphics handles vector h in legend(h) can contain objects from any axes (created by axes(), subplot(), or tiledlayout()) from within a figure. As Prajith mentioned, the legend must be a child of a single axes but it can then be repositioned to anywhere within the figure. Starting in the r2020b release, legend positions can be changed with TiledLayout as well.
Examples:
You can generate a legend with the option :'Location', 'northoutside' to be outside one of the subplots, then change its position to where you want it to be.
See example below:
t = 1:100;
subplot(1,2,1);
plot(t);
hold on
plot(t+10);
subplot(1,2,2);
plot(t);
hold on
plot(t+10);
leg = legend('t1','t2', 'Location','northoutside','orientation','horizontal');
leg.Position(1) = 0.4;
leg.Position(2) = 0.95;
1 件のコメント
Mike
2025 年 6 月 5 日
This is exactly what I was looking for!! Thank you!!
カテゴリ
ヘルプ センター および File Exchange で Legend についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

