Использование R без X11

Я работаю на сервере LSF и использую команду bsub для запуска сценария оболочки perl в сценарий R. Вот моя команда:

bsub -XF -n 1 -R "rusage[mem=16]" -We 60 -J <job_array> -o out.log 'script.pl <script arguments>'

Этот perl-скрипт вызывает R-скрипт, который выполняет некоторые вычисления, а затем печатает график PNG. R настроен в нашем кластере LSF таким образом, что он не позволяет инициировать устройство PNG без включения переадресации X11. У меня включена переадресация X11, и это работает нормально, пока я не захочу использовать массивы заданий. Согласно руководству LSF, массивы заданий несовместимы с пересылкой X11.

Это потребует от нас изменения сценариев для записи в файлы PDF вместо PNG, однако мы не хотим изменять сценарии, которые мы используем в настоящее время, поскольку они являются частью более крупного общедоступного конвейера, и мы не хотели бы, чтобы какие-либо расхождения между общедоступной и локально установленной версией.

Можем ли мы в любом случае использовать R для записи графиков PNG без пересылки X11?

Спасибо!


person Komal Rathi    schedule 14.12.2015    source источник
comment
Так что я был бы прав, если бы сказал, что если вы находитесь на консоли R с отключенной переадресацией X11 и делаете что-то вроде png("test.png"); plot(rnorm(100)); dev.off(), вы не получаете сюжет?   -  person maccruiskeen    schedule 15.12.2015
comment
У меня есть участок, но он пустой.   -  person Komal Rathi    schedule 15.12.2015
comment
Хорошо, на моем кластере без X11 я получаю график, поэтому я не знаю, как помочь   -  person maccruiskeen    schedule 15.12.2015
comment
Извините, я имел в виду, что файл png создан, но он пуст. Я не понимаю сюжет.   -  person Komal Rathi    schedule 15.12.2015
comment
Это повторяющийся вопрос, поэтому он закрыт. (Базовый) PNG требуется x11 для метрик шрифта, поэтому либо используйте другое устройство (одно из устройств Cairo может создавать PNG без x11), либо используйте xvfb-run для «подделки» виртуального сервера x11.   -  person Dirk Eddelbuettel    schedule 15.12.2015
comment
Perl-скрипт представляет собой оболочку для 12 R-скриптов, некоторые из которых зависят от X11. Как изменить команду bsub для учета xvfb-run? Я никогда не использовал его, поэтому не знаю, как его применять.   -  person Komal Rathi    schedule 15.12.2015
comment
Если prog arg1 arg2 arg3 — это ваш текущий вызов, то xvfb-run prog arg1 arg2 arg3 будет вашим новым вызовом. Так же, как nice или time или...   -  person Dirk Eddelbuettel    schedule 15.12.2015
comment
Решит ли эту проблему установка локальной версии R и ее использование? Я предполагаю, что это не так просто, хотя.   -  person Komal Rathi    schedule 16.12.2015