添加几个条形图Matlab的常见图例

时间:2015-04-24 04:32:07

标签: matlab matlab-figure

我有一个5x3的条形图,它们都有相同的图例。我想知道是否有办法让我可以将它们全部合并在一个图中,最后只有一个大的传说作为一行而不是在每个图中放置15个小小的传说?如果有人可以请指教。

1 个答案:

答案 0 :(得分:2)

代码如下,您只需使用subplot将多个图表绘制成1张图片。

A = rand(4);
subplot(5,3,1)
bar( A );
subplot(5,3,2)
bar( A );
subplot(5,3,3)
bar( A );
subplot(5,3,4)
bar( A );
subplot(5,3,5)
bar( A );
subplot(5,3,6)
bar( A );
...

如果你想要5x3图,那么前两个参数分别是5和3。第三个参数只是该图的索引。在绘图之前拨打subplot,你就可以了!

结果如下 enter image description here

如果您希望为所有绘图创建一个共同的图例,则可以使用suggestion here。只需为最后一个创建图例并将其定位在SouthOutside即可。您需要将行数增加1并覆盖该区域的两倍,以便为图例留出足够的空间。

ax1 = subplot(4,1,1);
plot(rand(30,2))
ax2 = subplot(4,1,2);
plot(rand(30,2))
ax3 = subplot(4,1,3:4);
plot(rand(30,2))
legend({'first','second'},'Location','SouthOutside')

结果就是这样。

enter image description here