linux怎么进入绘图模式,Linux 绘图工具
Linux 繪圖工具
2016-11-03 Thursday
主要介紹一下 Linux 中的 Gnuplot Graphviz 套件,主要用于畫圖。
Ggnuplot 是一個命令行驅動的繪圖工具,可將數學函數或數值資料以平面圖或立體圖的形式畫在不同種類終端機或繪圖輸出裝置上,是由 Colin Kelley 和 Thomas Williams 于 1986 年開發的繪圖程序發展而來的,可以在多個平臺下使用。
graphviz 是貝爾實驗室開發的一個開源的工具包,它使用一個特定的 DSL(領域特定語言) dot 作為腳本語言,然后使用布局引擎來解析此腳本,并完成自動布局。該軟件包提供豐富的導出格式,如常用的圖片格式,SVG、PDF 格式等。
在此介紹一下常見的使用方法。
Graphviz
graphviz 的設計初衷是對有向圖/無向圖等進行自動布局,開發人員使用 dot 腳本定義圖形元素,然后選擇算法進行布局,最終導出結果。
該軟件中包含了眾多的布局器:
dot 默認布局方式,主要用于有向圖
neato 基于spring-model(又稱force-based)算法
twopi 徑向布局
circo 圓環布局
fdp 用于無向圖
默認 CentOS 是安裝了 dot 以及 graphviz,可以直接使用。
DOT
dot 可以用來表示有向圖 (->) 以及無向圖 (–),每個節點使用不同的屬性,例如顏色、形狀、線形等。最簡單的示例如下。
$ cat foobar.dot # 查看文件
digraph G {
hello -> world;
}
$ dot -Tpng foobar.dot -o foobar.png # 生成png
$ eog foobar.png # 預覽一下
graphviz 使用三種對象 node、edge、graph 來描述一個圖,一個節點的 shape 定義了頂點的形狀,代表類型有這么幾種:1) 多邊形類型;2) 純文本類型; 3) 基于記錄類型。
Gunplot
現在有很多的科學作圖軟件,如 Windows 平臺上的 Origin、Tecplot、SigmaPlot 等,*NIX 平臺上的 LabPlot、gnuplot 等,其它的計算軟件如 Matlab、Mathematica、Maple、Scilab、IDL、Maxima 等對科學作圖也有很好的支持。
而 gnuplot 是典型的 UNIX 哲學的產物,小巧、靈活、擅長與其他工具協同;既支持命令行交互模式,也支持腳本。
如下兩個就是通過 gnuplot 繪制的圖片。
在 CentOS 中,可以直接通過 yum install gnuplot 安裝即可。
gnuplot> plot sin(x) # 繪制sin(x)曲線
gnuplot> set xrange [-pi:pi] # 設置X的取值范圍
gnuplot> replot cos(x) with points pointtype 2 # 用點圖重繪
----- 效果同上
gnuplot> plot [-pi:pi] sin(x), cos(x) with points pointtype 2
常見示例
設置輸出
包括了輸出文件的格式,輸出的步驟。
set terminal wxt # 輸出到電腦屏幕
set terminal postscript eps color solid linewidth 2 font "Helvetica,20" # 輸出為eps格式
set terminal pdfcairo linewidth 2 font "Times New Roman,8"
set terminal pngcairo linewidth 2 font "AR PL UKai CN, 14"
set output "hello.eps"
set title 'Hello World Gnuplot'
plot [-pi:pi] sin(x), cos(x) with points pointtype 2
set output # 標示輸出結束
eps 為 LaTeX 的常用圖片格式,支持高質量的矢量圖形,并且可以方便轉換為 pdf、svg 等其它常用格式。如上是將輸出設置為有色、采用實線、設置為 2 倍線寬、且字體采用 “Helvetica” 20 號字體。
另外,對于字體常用的還有 Times-Roman、Arial、Courier (等寬字體)、Symbol (希臘字母)。
命名圖和坐標軸
set key top left # 設置圖標
set key box # 圖標外添加一個框
set title 'Hello World Gnuplot'
set xlabel 'Angle, in degrees'
set ylabel 'sin(angle)'
set xrange [-pi:pi] # 設置X軸的取之范圍,并設置角度顯示
set xtics ('0' 0, '90' pi/2, '-90' -pi/2, '45' pi/4,'-45' -pi/4,'135' 3*pi/4,'-135' -3*pi/4)
set grid # 顯示網格
plot sin(x)
多條曲線
with 子句可以詳細而精確地指定線的樣式。
plot sin(x) with linespoints pointtype 5, cos(x) w boxes lt 4
with/w 指定繪制線的格式
linespoints 在每個數據點處標記一個點
boxes 適合繪制直方圖數據
pointtype/pt 點類型為5
linetype/lt 繪制采用第4種線
參考
如果喜歡這里的文章,而且又不差錢的話,歡迎打賞個早餐 ^_^
支付寶打賞
微信打賞
總結
以上是生活随笔為你收集整理的linux怎么进入绘图模式,Linux 绘图工具的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 编程找出四位整数abcd 中满足下述关系
- 下一篇: 什么是抽象方法