轉載自 這裡
前言 :
關於這個軟體,網路上已經有許多介紹性的文章。本篇文章以物理系學生常用的功能「二維畫圖」與「數據fit」為主題,作為一個快速引入門的指引。相信只要學些基本基礎後,就可以依照自己的目的去自學了.
下載軟體 :
從軟體的官方網頁,可進入下載頁面(SourceForge.net)
★ Windows 用戶
點選』Architecture』項目為』i386″的檔案(類似』gp423win32.zip』的檔名)即可下載二進位程式。
將程式解壓縮展開後,執行bin\wgnuplot.exe即可。
ps. 事實上 gnuplot 只需要 wgnuplot.exe 一個檔案即可執行,可當作輕巧的可攜式綠色軟體。不過就沒有 help 功能了。
★ 非 Windows 用戶 (以 Ubuntu Linux 為例)
用 Synaptic 套件管理程式搜尋』gnuplot』即可由套件庫中安裝。亦可自己下載原始碼來編譯:
從此之後,可從終端機輸入』gunplot』指令來使用此程式
二維函數畫圖 :
1. gnuplot 的畫圖指令非常簡單。例如畫 sin(x) 的圖,指令為:
plot sin(x)
2. 設定圖上的標題和座標軸名稱:
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』,檔案內容為(中間以一個空格格開) :
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 的結果.
plot 16.0833*x-37.8889, 'data.txt' //將 fitting 結果的函數圖形與原始數據,畫在同張圖上.
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 程式目錄下.
set terminal windows //指令 set terminal 可簡寫為 set term
參考與延伸資料 :
* gnuplot簡介, yenlung
* Gnuplot 導讀, 中央研究院計算中心ASPAC計劃。
* GNUPLOT使用手冊, 中央研究院計算中心ASPAC計劃。
* GNUPLOT 科學繪圖工具網頁介面, 台灣師大物理系 物理教學示範實驗教室
* 地圖/統計圖/3d 函數圖/實驗報告圖 -- Gnuplot 純畫圖
* Official gnuplot documentation
This is a blog to track what I had learned and share knowledge with all who can take advantage of them
標籤
- [ 英文學習 ]
- [ 計算機概論 ]
- [ 深入雲計算 ]
- [ 雜七雜八 ]
- [ Algorithm in Java ]
- [ Data Structures with Java ]
- [ IR Class ]
- [ Java 文章收集 ]
- [ Java 代碼範本 ]
- [ Java 套件 ]
- [ JVM 應用 ]
- [ LFD Note ]
- [ MangoDB ]
- [ Math CC ]
- [ MongoDB ]
- [ MySQL 小學堂 ]
- [ Python 考題 ]
- [ Python 常見問題 ]
- [ Python 範例代碼 ]
- [心得扎記]
- [網路教學]
- [C 常見考題]
- [C 範例代碼]
- [C/C++ 範例代碼]
- [Intro Alg]
- [Java 代碼範本]
- [Java 套件]
- [Linux 小技巧]
- [Linux 小學堂]
- [Linux 命令]
- [ML In Action]
- [ML]
- [MLP]
- [Python 學習筆記]
- [Quick Python]
- [Software Engineering]
- [The python tutorial]
- 工具收集
- 設計模式
- 資料結構
- ActiveMQ In Action
- AI
- Algorithm
- Android
- AWS
- Big Data 研究
- C/C++
- C++
- CCDH
- Coursera
- Database
- DB
- Design Pattern
- Device Driver Programming
- Docker
- Docker 工具
- Docker Practice
- Eclipse
- English Writing
- ExtJS 3.x
- FP
- FreeBSD
- GCC
- Git
- Git Pro
- GNU
- Gradle
- Groovy
- Hadoop
- Hadoop. Hadoop Ecosystem
- Java
- Java Framework
- Java UI
- JavaIDE
- JavaScript
- JFreeChart
- Kali/Metasploit
- Keras
- KVM
- Learn Spark
- Linux
- Lucene
- Math
- ML Udemy
- MPI
- Nachos
- Network
- NLP
- node js
- OO
- OpenCL
- OpenMP
- OSC
- OSGi
- Perl
- PostgreSQL
- Python
- Python Std Library
- Python tools
- QEMU
- R
- RIA
- RTC
- Ruby
- Ruby Packages
- Scala
- ScalaIA
- TensorFlow
- Tools
- UML
- Unix
- Verilog
- Vmware
- Windows 技巧

2011年8月3日 星期三
訂閱:
張貼留言 (Atom)
[ Python 常見問題 ] python generator “send” function purpose?
Source From Here Question Can someone give me an example of why the "send" function associated with Python generator function...

-
來源自 這裡 前言 : Thread 是 threading 模塊中最重要的類之一,可以使用它來創建線程。有兩種方式來創建線程:一種是通過繼承Thread 類,重寫它的 run 方法;另一種是創建一個 threading.Thread 對象,在它的初始化...
-
Preface: 在這個階層中,我們只需考慮電路模組的功能,而不需考慮其硬體的詳細內容. Verilog 的時序控制為以事件為基礎的時序控制: * 接線或暫存器的值被改變。 * 模組的輸入埠接收到新的值 * 正規...
-
Source From Here Preface 本文實例講述了Python中 zip() 函數的定義及用法,相信對於Python初學者有一定的借鑒價值。 一、定義: zip([iterable, ...]) zip() 是 Python 的一個內建...

沒有留言:
張貼留言