標籤:

LaTeX畫矢量圖相關(字體、箭頭位置、分組)?

我一直在琢磨一篇論文中的圖用latex怎麼繪製出來,問題標題不知如何取比較合適,但是我覺得畫該圖(鏈接見後文)需要解決的就是內容分組、設置箭頭問題、然後是設定字體。

http://sfault-image.b0.upaiyun.com/fd/b8/fdb8f1e6d1b691a16ca98b67596ee568_article


方法一:

這個可以直接用picture環境中的命令來畫,如果不嫌麻煩的話,比如

line用來生成直線

vector用來生成矢量,帶箭頭

circle用來生成圓圈

等等

曲線的話,可以用bezier來生成。詳細的可以去參考隨便一本LaTeX的文檔。

舉個例子的話,可以這樣

egin{center}

egin{picture}(100,100)

put(50,50){circle{10}}

qbezier(80,80)(110,50)(80,20)

put(95,50){1}

qbezier(90,90)(130,50)(90,10)

put(110,50){2}

qbezier(110,110)(170,50)(110,-10)

put(140,50){3}

end{picture}

end{center}

來畫一個原子……雖然有點簡陋:

可以用

egin{center}

setlength{unitlength}{1mm}

egin{picture}(180,30)

linethickness{1pt}

put(170,20){vector(-1,0){150}}

put(15,19){$vec E$}

%put(-2,0){A}

put(0,10){line(1,0){180}}

%put(0,5){line(0,1){10}}

%put(1,7){ iny Control}

multiput(60,4)(0,3){4}{line(0,1){2}}

put(30,7){ iny Accelerate}

put(58,0){C}

multiput(110,4)(0,3){4}{line(0,1){2}}

put(108,0){D}

put(10,5){line(0,1){10}}

put(8,0){B}

multiput(160,4)(0,3){4}{line(0,1){2}}

put(158,0){D}

put(180,5){line(0,1){10}}

put(178,0){E}

end{picture}

end{center}

來畫這個……

綜合一下這些命令,當然可以畫出你提到的那種圖……

但是,但是,畫完了要累死了……

方法二:

還有一種稍微簡單一點的方法是,使用minipage和盒子的功能,加上前面提到的這些畫線的方法,可以話出來,這樣簡化了那些列表的繪製,因為minipage或盒子裡面可以很方便的做這些。

比如cases環境可以很方便的把大括弧的內容做好,然後放到mbox(或者fbox,minipage之類的)裡面,然後繪製帶箭頭的線條,就可以完整的複製出來了。

方法三:

有一個簡便的方法,可以畫得更漂亮的圖又不花大力氣:直接調用Tikz包。關於這些可以看這個網站:

http://www.texample.net/tikz/examples/

上面有各種漂亮的內容。以至於我顯得無聊就去畫幾個圖玩玩……

比如你想要的這種樹形結構,可以看這些:

http://www.texample.net/tikz/examples/feature/nodes-and-shapes/

http://www.texample.net/tikz/examples/feature/node-positioning/

http://www.texample.net/tikz/examples/feature/trees/

如果想要完整的重現問題中提到的例子,可以看一文檔:下http://www.texample.net/media/pgf/builds/pgfmanualCVS2010-09-28.pdf

比如377頁有如何繪製帶複雜括弧的矩陣等等。重現這個圖應該只需要比較簡單的幾個功能吧。

關於設置字體的問題。可以用 XeTeX,使用specfont功能來設置字體,或者直接使用
ewfontfamilyheiti{"黑體"} 類似的方法重定義字體名字,然後

heiti 你好

這樣的方式來自定義部分內容的字體。

不過,話說回來,為嘛非要用LaTeX來畫呢,這個用腦圖軟體應該是更方便吧~


推薦閱讀:

為何大多數 LaTeX 編輯器連中英文混排時的自動換行都不支持?
如何推薦理工專業的同學使用LaTeX排版?
如何評價「LaTeX 的編輯效率大幅低於 Word」的研究?
側重於介紹公式編輯的LaTeX中文入門書有哪些?
LaTeX 中圖和表如何並排?

TAG:LaTeX |