簡體   English   中英

在無頭Ubuntu 14.04服務器上使用matplotlib

[英]Using matplotlib on headless Ubuntu 14.04 Server

我有一個無頭的Ubuntu 14.04服務器,我使用SSH遠程連接。 我想使用matplotlib並在ssh客戶端上顯示圖。 例如,我將連接使用:

ssh -X name@server.com

然后從Python控制台,我希望這在窗口中生成一個圖:

import matplotlib.pyplot as plt
plt.plot(range(10))
plt.show()

我已經在我的virtualenv中安裝了matplotlib,我運行了sudo apt-get install python-gtk2 ,但是劇情仍然沒有出現。 我想我錯過了很多包。 什么是我可以安裝的相關最小的X相關軟件包,以使其工作? 我不想安裝ubuntu-desktop

我得到了它在Ubuntu 14.04.1服務器上的工作,但它很痛苦! 棘手的部分絕對是virtualenv。 我終於運氣了Qt4后端,我只能通過Ubuntu軟件包安裝,然后不得不將它符號鏈接到我的virtualenv。 所以這是一步一步的過程......

首先安裝pre-req並將PyQt4入侵你的virtualenv:

$ sudo apt-get install xauth x11-apps python-qt4 
$ ln -s /usr/lib/python2.7/dist-packages/PyQt4 /path/to/myvenv/lib/python2.7/PyQt4

現在手動下載並安裝SIP( http://www.riverbankcomputing.com/software/sip/intro )並激活您的venv,如下所示:

$ tar xzf sip-4.16.4.tar.gz
$ cd sip-4.16.4
$ python configure.py
$ make
$ sudo make install

接下來,下載matplotlib源碼tarball並修改安裝配置以強制它安裝Qt4后端:

$ tar xzf matplotlib-1.4.2.tar.gz
$ cp matplotlib-1.4.2/setup.cfg.template matplotlib-1.4.2/setup.cfg

現在編輯第68行附近的setup.cfg來讀取:

qt4agg = True 

Matplotlib現在將在您的venv中干凈利落地安裝:

$ pip install -e matplotlib-1.4.2/

現在您可以使用-X標志進行SSH,並且圖表將遠程加載!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM