1

我使用 gmt 创建了几个具有相同轴的 x - y 图形的 .ps 文件。我有几组数据,每组包含 14 到 20 个图。每个图都在一个单独的目录中。

我想覆盖数据集中的每个 .ps,以显示图之间的相关性。

我知道这与此处发布的线程相似:

将一个 pdf 或 ps 文件叠加在另一个文件之上

但我不必处理多个页面。

我不是程序员,我是学生!我真的很感激一种快速的方式将它们堆叠在一起以查看整体趋势。

如果没有,我要去买一堆 OHP 胶卷,然后找最近的复印机……它看起来不会那么闪亮。

感谢所有帮助!

4

2 回答 2

0

嗯,Inkscape网站说它可以导入 PostScript。不过,对此持保留态度-我自己还没有尝试过。

或者,如果你不介意弄脏你的手,PostScript 是一种相当易读的基于堆栈的编程语言——我强烈推荐A First Guide To PostScript。如果你能弄清楚文件的哪一部分包含你想要的情节,你应该能够将它们复制并粘贴在一起。这在很大程度上取决于 GMT 生成的代码的质量和组织。

您最好的选择可能是矢量图形应用程序,如 Inkscape(上图)或 Adob​​e Illustrator。

于 2009-12-30T21:34:23.280 回答
0

我以前做过类似的事情,使用 GMT 生成两个图(地球的相对侧)到 PS 并覆盖它们,一个翻转 180 度并反射(也就是说,将地球描绘成一个投影平面,每个点都相等和它的对立面)。

这是我的代码:

#!/bin/sh

GMT gmtset BASEMAP_FRAME_RGB +192/192/192
GMT gmtset BASEMAP_FRAME_RGB 0/0/0
GMT pscoast -JS-60/0/16 -R0/360/-90/90 -Di -A5000 -N1 -W -GP300/15:FLightRedB- -SWhite -P -K > mapa.ps
GMT pscoast -JS120/0/16 -R0/360/-90/90 -Bg30/g15 -Di -A5000 -N1 -W -GP300/15:FLightGreenB- -Sp1/50:F-B- -P -O > mapb.ps
sed -i 's/595 842/600 600/g' mapa.ps
sed -i 's/PSL/180 rotate -1 1 scale 0 -1890 translate \nPSL/' mapb.ps
cat mapa.ps mapb.ps > mapc.ps
ps2pdf mapc.ps

注释掉第二sed行会覆盖它们而不翻转第二行。您可能可以通过调整此脚本并用您正在使用的任何内容替换 GMT 命令来实现您想要的。-O用于第二个绘图的选项设置覆盖模式,它省略了触发创建新页面的 PS 代码。然后你可以把它们放在一起。

于 2009-12-31T17:08:06.740 回答