Используя определенную программу (панель инструментов PersistenceLandscapes) Я генерирую большое количество скриптов, из которых я создаю графики с gnuplot. Я перебираю файлы и заставляю gnuplot показывать график командой gnuplot gnuplotCommand.txt -p
. Как я могу заставить gnuplot сохранить сюжет в, скажем, PNG или (желательно) формате EPS? (Я хочу, чтобы избежать вмешательства с gnuplotCommand
-типа скриптов.)Сделать GNUPLOT сохранить график из оболочки
ответ
Самым простым решением является добавление настройки терминала через опцию -e
и вывести стандартный вывод на требуемый выходной файл:
gnuplot -e 'set term pngcairo' gnuplotCommand.txt > output.png
Вы можете попробовать Баш скрипт как
gnuplot <<- EOF
set term png
set output 'gnuplotCommand.txt.png'
load 'gnuplotCommand.txt'
EOF
или, в .eps версии
gnuplot <<- EOF
set terminal postscript eps
set output 'gnuplotCommand.txt.eps'
load 'gnuplotCommand.txt'
EOF
изменений 'участок«gnuplotCommand.txt'' к 'нагрузки» gnuplotCommand.txt'', так как этот файл автоматически сгенерированный скрипт из другой программы. – vagoberto
Я думаю, вы просто ответили на вопрос, который я задал в комментарии выше. Мне нужно использовать систему («date + F»). Png как мое имя файла. Я знаю, как это сделать в двух строках кода. TNX. – SDsolar
Если у вас есть версия gnuplot 5.0, вы можете передать аргументы в свой скрипт. Например,
# script.gp
if (ARGC > 1) {
set terminal ARG2
set output ARG3
print 'output file : ', ARG3, ' (', ARG2 , ')'
}
# load the script needed
load ARG1
Этот скрипт должен вызываться с опцией -c
gnuplot -c script.gp gnuplotCommand.txt pngcairo output.png
В этом примере мы установили переменные ARG1=gnuplotCommand.txt
, ARG2=pncairo
и ARG3=output.png
. Количество аргументов: ARCG=3
. Кроме того, в качестве имени основного сценария было установлено ARG0=script.gp
.
Если вы просто хотите увидеть результат, не сохраняя его в файл, вы можете вызвать этот сценарий как:
gnuplot -p script.gp gnuplotCommand.txt
Вы можете проверить, если пользователь дал имя выходного файла , Если нет, то мы можем использовать имя по умолчанию:
if (ARGC > 1) {
if (ARGC < 3) { ARG3="default" } # without extension... it doesn't matter in linux :)
set terminal ARG2
set output ARG3
print 'output file : ', ARG3, ' (', ARG2 , ')'
}
Аргументы могут быть переданы и в более ранних версиях, но используют другой синтаксис. – Matthew
Это выглядит хорошо, но что, если аргумент должна быть либо сегодняшняя дата, либо, возможно, произвольная? Внутри программы я бы использовал date = system («date +% F»), а затем установил дату выхода. «.png», чтобы получить сегодняшнюю дату. – SDsolar
@SDsolar Попробуйте с 'gnuplot -c script.gp "$ (date +% F)". Это установит 'ARG1' в качестве даты (используйте его как' ARG1. ". png" 'внутри скрипта) – vagoberto
- 1. Gnuplot: график из числа и из файла
- 2. gnuplot scale весь график
- 3. Gnuplot - сохранить вывод
- 4. Interval график, в Gnuplot
- 5. Интерполирующие график в Gnuplot
- 6. gnuplot: Контурный график разбросанных данных
- 7. Как сохранить график через командную строку с помощью Gnuplot?
- 8. График ящика и усов GNUPLOT
- 9. Gnuplot - обновить график каждую секунду
- 10. Графический график Gnuplot y-axis
- 11. Не удается выполнить команды оболочки из gnuplot
- 12. gnuplot tics нанесены на график
- 13. Итеративный параметрический график с gnuplot
- 14. Gnuplot, простой график xy, ошибка?
- 15. Gnuplot: график рассеяния и плотность
- 16. Gnuplot не загружает график графика
- 17. Как сделать график разворота GNUPlot с закрытыми линиями?
- 18. Как сохранить вывод из оболочки?
- 19. Как построить конкретный график в Gnuplot
- 20. Контурный график положения трехмерных частиц в gnuplot
- 21. трехмерный график векторного поля с gnuplot
- 22. График интенсивности Gnuplot с оттенками серого
- 23. gnuplot - график случайных точек внутри эллипсоида
- 24. gnuplot, нарисуйте только легенду, а не график.
- 25. gnuplot xy график рассеяния с несколькими группами
- 26. Удерживания, размер фиксированных, прозрачный график в Gnuplot
- 27. Basic 2-мерный график с Gnuplot
- 28. Gnuplot: Полярный график с переменными диапазонами
- 29. График Gnuplot несвязан (данные сдвинуты/несовместимы)
- 30. как построить график с использованием gnuplot из C++-программы
Это удобно. Я просто использую две версии одной и той же сюжетной программы. Один для pngcairo и один для X11 с паузой и перечитанием для экрана. Но это приятно знать. Никогда не пытаться подключиться к файлу png, подобному этому. Мои выходные файлы должны быть названы по дате, однако, поэтому мне нужно установить имя файла для - system («date +% F :). Png - я бы просто использовал \ n после установленного термина, чтобы добавьте больше строк или, возможно, именование можно сделать в bash? Моя шляпа выключена, @Christoph. – SDsolar