GUI gWidgets не может отображаться при вызове с помощью R CMD BATCH
Я разработал анализатор с графическим интерфейсом (используя пакет gWidgets). Кажется, что все хорошо, когда я запускаю свой код в консоли R или R studio, GUI может появляться как открытый, взаимодействие идет гладко, выбирая параметры.
Тем не менее, мой менеджер не имеет представления о том, как писать код, и он хочет щелкнуть мышью по N-Run. Поэтому я попытался использовать R CMD BATCH для создания.bat файла.
R CMD BATCH G: \ Temp \ dav \ AB_Analyzer \ MAINcode.r outputFile
Когда я запустил файл с битой, ничего не появлялось.
Могу ли я знать, что я сделал не так?
Спасибо за любую помощь.
1 ответ
Если вы запускаете скрипт R в пакетном режиме (R CMD BATCH
) "интерактивный флаг" установлен в false
что может вызвать это поведение (без взаимодействия с пользователем = не отображать никакой графический интерфейс).
Вы можете запросить "интерактивный флаг" с помощью interactive()
функция в R.
Возможное решение: добавьте --interactive
параметр в командной строке.
Чтобы проверить его поведение, создайте файл сценария R со следующим содержимым:
print(interactive())
Если вы запустите этот скрипт с
R CMD BATCH --no-save --no-restore batch_test.R out.txt
Вы найдете результат FALSE
в файле out.txt, если вы запустите его с
R --vanilla --interactive < batch_test.R
Вы увидите TRUE
(поэтому используйте последнюю командную строку в качестве решения - примечание: без CMD).