我使用gmt创建了几个具有相同轴的x-y图形的.ps文件。我有几组数据,每组包含14到20个图。每个图都在一个单独的目录中。
我想覆盖数据集中的每个.ps,以显示这些图之间的相关性。
我知道这与此处发布的帖子类似:
overlay one pdf or ps file on top of another
但我不必处理多个页面。
我不是程序员,我是学生!我真的很感激快速将它们叠加在一起以便看到整体趋势。
如果没有,我会去购买一堆OHP电影并找到最近的复印机.......这看起来不那么闪亮。
感谢所有帮助!
答案 0 :(得分:0)
嗯,Inkscape网站说它可以导入PostScript。尽管如此,我还是尝试了一下 - 我自己没试过。
或者,如果你不介意让自己的手变得有点脏,那么PostScript是一种基于人类可读的基于堆栈的编程语言 - 我强烈推荐A First Guide To PostScript。如果你能弄清楚哪些文件包含你想要的情节,你应该能够将它们复制并粘贴在一起。这完全取决于GMT生成的代码的质量和组织。
您最好的选择可能是Inkscape(上图)或Adobe Illustrator等矢量图形应用程序。
答案 1 :(得分: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代码。然后你可以把它们放在一起。