我想以下列方式用gnuplot放置几个图:
+------------------------+
|plot1 |
| |
+------------------------+
+----------++------------+
|plot2 ||plot3 |
| || |
+----------++------------+
+----------++------------+
|plot4 ||plot5 |
| || |
+----------++------------+
简单的 nxm 布局可以通过set multiplot layout n,m
(参见 官方网站上的这些演示)来实现。
matplotlib
正如您在文档中看到的那样,提供了更高级的可能性:使用 GridSpec 自定义子图的位置。
在 gnuplot 中,我使用set origin
并set size
实现了这一点。但是,它相当繁琐,当您注意到以后要更改布局时,需要重新计算大小和位置。
备注 1: 通常将边距设置为固定大小以实现正确的绘图大小也很有用。通过改变 xlabels 等进行的自动计算将使实现正确布局变得更加困难。
备注 2:代替origin/size
gnuplot 提供了另一种使用set [lrbt]margin <> at screen
设置绘图边界的可能性。用户必须确保标题和标签有足够的空间(参见演示)。仍然不是一个完美的解决方案,但有时更方便。
是否有我不知道的可能性,或者是否存在创建布局的工具?