顯示具有 TikZ 標籤的文章。 顯示所有文章
顯示具有 TikZ 標籤的文章。 顯示所有文章

2012年4月16日 星期一

[latex] From gnuplot to tikz via lua


先從 GNUPlot 開始

gnuplot 基本上直接裝的話是預設 x11 為 output terminal
如果不喜歡 x11(esp, on mac),裝個 aquaterm 也是不錯的
不過就是記得要先裝 aquaterm 就是了

[optional]
aquaterm目前看到最新版是 1.1.0 (2011)
而前一版是 1.0.1 (2006)
照說直接裝 1.1.0 就好
可是 1.1.0 只有 .pkg 不能自己 build...
而明顯 1.0.1 實在太舊了...
無奈之下就只好 .pkg 1.1.0 了
一共被塞了兩個東西
1. ~/Applications/AquaTerm.app
2. /Library/Frameworks/AquaTerm.framework/
好吧,沒有到處亂塞就算了...

gnuplot 基本上用 homebrew 就好
> brew install gnuplto
輕鬆又愉悅!!

順便提供幾個 gnuplot 裡面的指令
列出所有可用的 terminal
# set term

設定 terminal 成 aquaterm, latex(tikz), xwindow(x11)
# set term aqua
# set term tikz
# set term x11

設定輸出檔案
# set output file
更多 gnuplot 內容請參考 documentation



這一篇的另一個主題就是 gnuplot 和 TikZ 的整合
承上篇,TikZ 強大過頭
所以這邊也描述一下 gnuplot → TikZ(tex) → pdf 的用法
這邊(http://www.texample.net/)有一個範例程式還有簡單的步驟講解

首先,如果只是要用貼圖的話
直接把 terminal 設定成某個圖檔格式就可以了
# set term png
不過這實在是不夠美觀,畢竟這就變成點陣圖了
所以還是直接輸出成 tikz 格式然後用 latex 去 compile 會比較一致又美觀
不過事實上,gnuplot 的 tikz terminal 目前並不是產生 pure tikz code
他是生產出一個介於 tikz 和 lua 之間的 middle-code
所以我們可以看見這些 code 不是用 \begin{tikzpicture} 開頭,而是 
\begin{tikzpicture}[gnuplot]
並且,latex 在 compile 這樣的 tex code 的時候
需要 load 一個 package, gnuplot-lua-tikz , 進來
不過在解決那個 latex package 之前要先有 lua 可以用
因為 # set term tikz 實際上是還是用 lua terminal弄出來的

雖說 MacTeX 幾乎是包山包海包東包西包大腸包小腸
但是偏生沒有那個 package: gnuplot-lua-tikz
而這東西 TeXLive 還沒有吃進去所以要手動安裝
好佳在這個 package 在gnuplot 的 src 裡面就有包
就在 gnuplot-x.x.x/share/LaTeX/ 裡面
把這些東西丟到可以讓 texlive 可以吃到的路徑就好了
(細節可以參考 wikibook 裡面的說明)
我自己是放在這裡
~/Library/texlive/2011/texmf-var/tex/latex/gnuplot-lua-tikz/ 
另一個可行的方案當然就是直接去 hack
/usr/local/texlive/2011
/usr/local/texlive/texmf-local
這兩個地方
不過因為當初是 .pkg 裝的
所以這裡基本上是以 root 身分鎖上的
要 chmod 才能塗塗改改就是了

2012年4月12日 星期四

[Notes]Graph in LaTeX

前言1. (可愛的) rueshyna 問我有沒有工具是吃一堆資料然後噴 tex table 出來
前言2. gtalk 上遠在米國的 favonia 突然提起 TikZ 作弊好用

嘛,然後東翻西看的時候發現 QtiPlot 可以直接吃 sheet file 然後生圖接著直接 export 成 .tex 檔(實際上就是輸出成 TikZ 的格式)。確實不錯用!可惜就是 qtiplot 的 binary 版要錢,自己 compile (source code 裡面有 readme.html) 又要裝 qtpy 4。這實在是浩大的工程呀 orz...

順道幾提:
1. tikzit 是可以直接生/改 TikZ 的程式。現在不太確定用起來如何,但是似乎簡單的圖還算堪用。
2. TikZ mini course 裡面有簡單的教學還有一些 templates 可以用
3. graph theory in latex 裡面也有一些好範例!
4. QtiPlot Alternatives 提到一些取代 QtiPlot 的程式,沒時間慢慢研究