默認狀況下,Win10的linux子系統(WSL)是隻能使用命令行程序的。全部圖形界面的程序都沒法執行。前端
經過爲Win10安裝XWindows協議的終端應用,可讓Win10成爲一臺XWindow終端,從而接受Linux的XWindow顯示輸出。
這樣的終端應用有挺多,Xming和VcXsrv是其中著名的兩個。下載安裝就能夠,我由於一些習慣上的緣由使用了後者。python
安裝設置都使用默認便可,其中在顯示端口設置的位置,默認是-1,表示自動選擇,大多數狀況是能夠工做的。也碰到過不能連通的狀況,這時候能夠嘗試設置成跟你Linux設置相同的端口,好比0。
linux
Linux的環境參數設置能夠放在~/.bashrc文件中,只要兩行:小程序
export DISPLAY=:0.0 export LIBGL_ALWAYS_INDIRECT=1
使用的時候先啓動XWindow終端程序。啓動WSL,好比我用的Ubuntu(WSL已經啓動的話,剛修改完配置文件也要從新啓動或者從新鏈接一次以便配置生效),這時候Linux已經可使用GUI輸出了,但默認狀況下的安裝,是沒有任何GUI程序的。能夠安裝一些小程序測試一下:後端
$ sudo apt install x11-apps ... $ xeyes
這表示整個GUI系統已經正常工做了。bash
並不建議在Linux安裝桌面系統,我以爲既然已經選擇了Windows做爲前端,就踏踏實實的用Windows,後端Linux使用命令行纔是正路子。安裝XWindow只是爲了使用Linux的GUI應用輸出。桌面系統作文件管理、系統設置之類的操做,長久來看必定是得不償失的,特別是在技能習慣上。app
Python的繪圖庫,好比經常使用的matplotlib,在WSL中會默認使用Agg繪圖後端。這是一個啞終端,不作GUI輸出,可是能夠保存繪製的圖形到文件。
安裝XWindow以後,但願使用matplotlib繪圖輸出,須要另外安裝TkAgg庫,不然仍然沒法繪圖顯示。
安裝以前先在Python的啓動信息中確認一下Python的版本,若是不是3.6或者3.6.x的版本,請對應修改下面安裝的軟件包。less
$ sudo apt-get install python3.6-tk
以後並不須要從新安裝matplotlib庫。
使用咱們原來課程中的繪圖示例來看看效果:函數
#繪製正弦曲線 #引入數值計算庫,改成短名稱 import numpy as np #引入繪圖庫,改成短名稱 import matplotlib.pyplot as plt #生成一個由-4到四、均分爲200個元素的列表 x = np.linspace(-4, 4, 200) #計算當x取值範圍-4至4時全部的sin函數解 f = np.sin(x) #繪製 plt.plot(x, f, 'red') #將繪製好的圖顯示出來 plt.show()
結果就是題頭圖了,WSL跟Win10桌面應用和平相處,共創和諧社會。測試