關於這個軟體,網路上已經有許多介紹性的文章。本篇文章以物理系學生常用的功能「二維畫圖」與「數據fit」為主題,作為一個快速引入門的指引。相信只要學些基本基礎後,就可以依照自己的目的去自學了!


以下為目錄:
(一) 下載軟體
(二) 二維函數畫圖
(三) 二維資料數據作圖
(四) 二維資料數據fitting(擬合、模擬)
(五) 輸出成圖檔
(六) 參考與延伸資料

(一) 下載軟體

從軟體的官方網頁,可進入下載頁面(SourceForge.net)

★ Windows 用戶

  1. 下載 Windows binary package 版本
  2. 將程式解壓縮展開後,執行 binary 資料夾裡的 wgnuplot.exe 即可。

ps. 事實上 gnuplot 只需要 wgnuplot.exe 一個檔案即可執行,可當作輕巧的可攜式綠色軟體。不過就沒有 help 功能了。 update: 新版似乎無法這樣做,會顯示找不到 libcairo-2.dll 元件。

★ 非 Windows 用戶 (以 Ubuntu Linux 為例)

用 Synaptic 套件管理程式搜尋 “gnuplot" 即可由套件庫中安裝。亦可自己下載原始碼來編譯:

  1. 下載 Full source and demos(給 others 其他作業系統的版本,其圖示包含 linux, mac, bsd, solaries)
  2. 將程式解壓縮展開後,從終端機在該資料夾裡,執行編譯安裝指令:
    ./configure
    make
    sudo make install

從此之後,可從終端機輸入 “gunplot" 指令來使用此程式。

(二) 二維函數畫圖

  1. gnuplot 的畫圖指令非常簡單。例如畫 sin(x) 的圖,指令為:
    plot sin(x)

  2. 設定圖上的標題、座標軸名稱,以及畫一個 y=e2 的圖,x座標軸從0到2,y座標軸從0到20:

    set title 'Exp'
    set xlabel 'x axis'
    set ylabel 'y axis'
    plot [x=0:2] [0:20] exp(x**2)

    注意:gnuplot的次方是用兩個星號「**」(而不是「^」)

(三) 二維資料數據作圖

  1. 先在「gnuplot 程式目錄」下,建立一個數據資料檔,檔名命名為 “data.txt",檔案內容為(中間以一個空格格開):

    0 0
    2 4
    4 18
    6 34
    8 63
    10 101
    12 140
    14 197
    16 260

  2. 依這個檔案裡的數據作圖的指令為:(數據的資料格式為x y)
    plot 'data.txt'
    注意: 假如把數據檔放在別的地方,譬如 C:\,引號裡就必須改成完整路徑’c:\data.txt’

(四) 二維資料數據 fitting (擬合、模擬)

  1. 以一次函數 ax+b 來fit:
    fit a*x+b 'data.txt' via a,b
    “Final set of parameters"裡的 a,b 即為 fit 的結果。
    將 fitting 結果的函數圖形與原始數據,畫在同張圖上:
    plot 16.0833*x-37.8889, 'data.txt'

  2. 以二次函數 ax2+c 來fit:
    fit a*x**2+c 'data.txt' via a,c

    將 fitting 結果的函數圖形與原始數據,畫在同張圖上:(如下,也可以先指定 a,c 值)
    a= 1.00828
    c=-0.639344
    plot a*x**2+c, 'data.txt'

(五) 輸出成圖檔

  1. 設定輸出終端機類型(輸出成 png 圖檔),以及輸出圖檔檔名:
    set terminal png
    set output 'filename.png'
  2. 接著執行想輸出成圖檔的繪圖指令,圖檔就會輸出到 gnuplot 程式目錄下。
  3. 要關掉gnuplot或輸入指令
    set output
    之後,圖檔才能正常讀取(感謝網友 jimmy 回應指教)p.s.此時程式的輸出終端機類型還在 png 哦。

附註

  • 若要使繪圖指令輸出的圖,改回輸出到螢幕上顯示,Windows 版可輸入:
    set terminal windows
    非 Windows 版可輸入:
    set terminal x11
  • 指令 set terminal 可簡短輸入為 set term 即可

(六) 參考與延伸資料

2010/9/1 updated 偷懶好久終於好好更新一番