Наложение или объединение нескольких файлов .ps

Я использовал gmt для создания нескольких файлов .ps графиков x-y с одинаковыми осями. У меня есть несколько наборов данных, каждый из которых содержит от 14 до 20 графиков. Каждый участок находится в отдельном каталоге.

Я хотел бы наложить каждый .ps в наборе данных, чтобы показать корреляцию между графиками.

Я знаю, что это похоже на тему, опубликованную здесь:

наложение одного файла pdf или ps поверх другого

но мне не нужно иметь дело с несколькими страницами.

Я не программист, я студент! Я был бы очень признателен за быстрый способ сложить их друг над другом, чтобы увидеть общую тенденцию.

Если нет, то я собираюсь купить стопку OHP-пленок и найти ближайший копировальный аппарат... который не будет выглядеть так блестяще.

Любая помощь приветствуется!


person Sam    schedule 30.12.2009    source источник


Ответы (2)


Я делал что-то подобное раньше, используя 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, запускающий создание новой страницы. Тогда вы можете просто погладить их вместе.

person KirarinSnow    schedule 31.12.2009

На сайте Inkscape говорится, что он может импортировать PostScript. отнеситесь к этому с долей скептицизма — я сам не пробовал.

В качестве альтернативы, если вы не боитесь немного испачкать руки, PostScript — довольно удобный для человека язык программирования, основанный на стеке, — я настоятельно рекомендую Первое руководство по PostScript. Если вы можете выяснить, какой фрагмент документов содержит нужный вам сюжет, вы сможете скопировать и вставить их вместе. Все это сильно зависит от качества и организации кода, сгенерированного GMT.

Лучше всего, вероятно, подойдет приложение для работы с векторной графикой, такое как Inkscape (выше) или Adobe Illustrator.

person JohnE    schedule 30.12.2009
comment
Другого в документе нет. Вот почему мое отсутствие знаний так расстраивает. Я буквально хочу распечатать файлы друг над другом. Сценарии GMT, которые создали графики, очень взломаны (я не против признать это, так как я не был тем, кто их писал!) Просто для загрузки требуется некоторое время, что почему я предпочитаю работать с файлами ps. Разве это не то, что вы имели в виду? - person Sam; 31.12.2009
comment
Сэм, позвольте мне пояснить: файл .ps — это программа PostScript, которая при выполнении принтером или диспетчером очереди печати генерирует графику и текст. Если вы просто откроете файл .ps в текстовом редакторе, код будет прямо там. Посмотрите вторую ссылку, которую я разместил, которая объясняет, как работает PostScript. Тем не менее, файлы .ps можно также открывать в некоторых приложениях для работы с векторной графикой, таких как Inkscape, что позволит вам манипулировать ими как изображениями без ущерба для качества. Загрузите Inkscape и попробуйте импортировать графики и накладывать их друг на друга. - person JohnE; 31.12.2009