Логи Gnuplot для стартапов?

273
Léo Léopold Hertz 준영

Я сейчас много раз удалял и устанавливал разные gnuplots. Однако теперь gnuplot с qt вылетает при запуске, если я просто запускаю

gnuplot -e "plot 'data.dat'" 

Сбой происходит так, что окно qt открывается вскоре после команды, но происходит сбой примерно через 0,01 секунды, так что я вижу только моргание окна. Моя система OSX Yosemite, и я выполнил установку с помощью brew.

Я удалял его много раз и переустанавливал, но проблема сохраняется. Я обновил свою систему. Мой .gnuplotrc пуст.

Как вы можете получить логи о внутренностях gnuplot? Я хочу посмотреть, что происходит не так.

1
Я предполагаю, что это не действительно сбой, но вы испытываете только быстрый компьютер. Попробуйте добавить опцию `-persist`. Что-то вроде `gnuplot -e 'plot' data.dat '" -persist`. Вполне возможно, что в предыдущей установке вы как-то включили опцию persist. Hastur 9 лет назад 1

1 ответ на вопрос

1
Hastur

Прежде всего, вы должны быть уверены, что gnuplotсбой. Для этого просто запустите вашу команду и после спросите в оболочке код выхода сecho $?

gnuplot -e "plot 'data.dat'" echo $? 

  • Если он возвращает, 0это означает, что выполнение завершено без ошибок. -persistПараметр может решить вашу проблему.

    gnuplot -persist -e "plot 'data.dat'" 
  • Если он возвращает число, отличное от 0него, значит, он потерпел крах.
    Из этой вики-книги вы можете прочитать несколько советов:

    Для отладки gnuplotфайла часто полезно:

    • Измените терминал на интерактивный (вместо вывода в файл), закомментировав установленные терминал и выходные строки.
    • Начните в gnuplotинтерактивном режиме, затем загрузите нужный файл.
    • Поместите паузу -1 (пауза до возврата каретки) в конец файла, затем запустите его из командной строки.
    • В качестве альтернативы, запустите gnuplotс параметром -persistкомандной строки, поэтому gnuplotвыход, но окно сохраняется.
    • Сделайте сам файл исполняемым, используя обозначение shebang (#!) (Зависит от точного пути): #!/usr/bin/gnuplot -persist

    Я могу добавить, что вы можете вызывать gnuplotс тире в качестве последнего параметра, чтобы остаться в интерактивном режиме, когда сценарий завершится.

    gnuplot filename.gp - ` 

    Затем вы можете начать делить ваш сценарий, пока не найдете ошибку (или вы можете написать в некоторых точках строки как print "here I am #1"... print "here I am #n", выполнить его и прочитать последний Here I Am # ).

Последнее примечание:

Он существует debug terminalв gnuplotтом, что если эта функция включена в вашей версии может помочь в процедуре отладки. Отсюда можно прочитать об этом

Этот терминал предназначен для отладки gnuplot. Это может быть полезно только для пользователей, которые изменяют исходный код

Похожие вопросы