У меня есть код Python, делающий некоторое вычисление на удаленной машине, названной A. Я соединяюсь на через ssh
от машины по имени B. Существует ли способ отобразить число по машине B?
Если вы используете matplotlib в Mac OS X на удаленном компьютере (B), вы должны сначала убедитесь, что вы используете одну из базовых сторон дисплея на основе X11, поскольку собственная внутренняя часть Mac OS X не может экспортировать свои графики на другой дисплей. Выбор серверной части может быть достигнут с помощью
import matplotlib
matplotlib.use('GTK') # Or any other X11 back-end
. Список поддерживаемых серверных компонентов можно получить, указав use ()
неправильное имя серверной части: matplotlib затем распечатает сообщение об ошибке, в котором перечислены возможные варианты возврата. -концы.
Затем для отображения графиков matplotlib можно использовать пересылку ssh X11.
Конечно, вы можете включить пересылку X11. Обычно это делается путем передачи параметра -X
или -Y
в ssh
при подключении к удаленному компьютеру
ssh -X computerA
. Обратите внимание, что демон SSH на компьютере Также необходимо настроить A для включения пересылки X11. Это делается путем помещения
X11Forwarding yes
в файл конфигурации компьютера A sshd_config
.
Если у демона SSH компьютера A не включена пересылка X11, вы всегда можете заставить Python записать результат вычисления в текстовый файл, загрузить его на компьютер B и использовать Matplotlib локально.