2009-12-30 84 views
1

我已经使用gmt创建几个具有相同轴的x-y图形的.ps文件。我有几组数据,每组数据包含14到20个地块。每个图都位于一个单独的目录中。覆盖或合并多个.ps文件

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

我知道这是类似于张贴在这里螺纹:

overlay one pdf or ps file on top of another

,但我没有处理多页。

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

如果不是,我要买一堆OHP胶片,并找到最近的复印机....这看起来不像闪亮。

所有帮助表示赞赏!

回答

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代码。然后,你可以把它们一起猫。

0

那么,Inkscape网站说,它可以导入PostScript。尽管如此,我还没有尝试过。另外,如果你不介意弄脏你的手,PostScript是一种相当人性化的基于堆栈的编程语言,我强烈推荐A First Guide To PostScript。如果你能弄清楚哪些文档包含你想要的图,你应该能够将它们复制并粘贴到一起。这完全取决于GMT生成的代码的质量和组织。

你最好的选择可能是像Inkscape(上图)或Adobe Illustrator的矢量图形应用程序。

+0

文档中没有其他内容。这就是为什么我缺乏知识令人沮丧。我从字面上想要将文件打印在彼此之上。创建这些情节的格林尼治标准时间脚本一起被非常攻击(我不介意承认这一点,因为我不是那个写它们的人!)只需要花一点时间来加载,这就是为什么我' d宁可使用ps文件。除非那不是你的意思? – Sam 2009-12-30 21:40:13

+0

Sam,让我试着澄清一下.ps文件是一个PostScript程序,当它由打印机或打印后台处理程序执行时,会生成图形和文本。如果你只是在文本编辑器中打开.ps文件,代码就在那里。查看我发布的第二个链接,它解释了PostScript的工作原理。 也就是说,.ps文件也可以在一些矢量图形应用程序中打开,例如Inkscape,它应该允许您在不牺牲质量的情况下将它们作为图像进行操作。下载Inkscape并尝试导入绘图并将它们叠加在一起。 – JohnE 2009-12-31 01:27:35