将边界框与 gnuplot 图例相匹配

将边界框与 gnuplot 图例相匹配

概括:有没有办法自动缩小 eps 文件的边界框以仅适合显示的文本?

细节

不久前我问过关于将多个 gnuplot 图合并为一个图形的问题。我正在尝试做类似的事情,但这次我也希望所有图形只有一个图例。为了实现这一点,我想生成一个只有图例的图形,然后将其作为子图放置在图形中的适当位置。

通过关闭其他所有内容并将绘图范围设置为不显示任何数据的部分,我可以使用以下命令生成仅带有图例的 gnuplot:

unset border
unset xtics
unset ytics
unset title
unset xlabel
unset ylabel
set xrange[-50:-10]
set yrange[-50:-10]

这给了我一个只有键集的图表。问题是边界框仍然包含实际图表的空间(如下所示)。我想要做的是将其裁剪为仅包含键的内容,以便我可以轻松地将其与其他图结合起来(如我的另一个问题的答案中所述)。

我可以通过手动编辑边界框来获得更接近我想要的结果,但如果可能的话,我更喜欢完全脚本化的解决方案。我尝试了一些方法,但还没有成功,所以我想我会在这里问,因为我之前的问题得到了一个非常有用的答案。

初始 eps 文件在此处输入图片描述

所需的 eps 文件(编辑边界框后): 在此处输入图片描述

答案1

处理 gnuplot 创建错误边界框的情况的一个技巧是输出到 postscript(未封装),然后对 ps2eps 进行系统调用以生成更正的文件。例如,使用set size ratio创建坏框:

set term postscript color
set size ratio 2
set output "wrong_bb.ps"
plot x**2
!ps2eps --ignoreBB -rotate=+ -f wrong_bb.ps

您可能需要尝试旋转选项:+表示顺时针 90 度,-表示逆时针 90 度,^表示 180 度。

相关内容