LaTeX 套件 chemfig - paraquat的部落格 - udn部落格
paraquat的部落格
作家:paraquat
文章分類
    Top
    LaTeX 套件 chemfig
    2015/03/26 17:28:06
    瀏覽:1294
    迴響:1
    推薦:3
    引用0
    chemfig算是一個繪圖工具,它是由TiKz套件開發出來的專門用來繪化學結構式的。TiKz是一個強大的繪圖套件,是由TeX的程式碼寫成的,所以和TeX的相容性最好。

    以前我通常是用繪圖程式metaPost來畫化學結構式,然後在文章中把圖形引入。metaPost有缺點是有可能相容性不好,由其是中文,以前我用Type1中文字形,拿到現在的xelatex來做排版動作時,就會找不到字形使排版失敗。但TiKz的圖就沒有問題,使用現代的中文opentype字體也沒有問題。

    使用chemfig套件,在文件前置區引:

    \usepackage{chemfig}

    然後在文件裡會,要用化學結構式時,就是

    \chemfig{結構式的內容}

    例如 paraquat 

    \chemname{\chemfig{CH_3-N^+*6(-=-(-*6(-=-N^+(-CH_3)=-=))=-=)}}{巴拉刈 paraquat}\par

    就可以順利的畫出paraquat的化學結構,使用中文也沒有問題。可以對它做旋轉,縮放的動作,文字的表現也正常,如旋轉30度:

    \chemname{\chemfig{[:30]CH_3-N^+*6(-=-(-*6(-=-N^+(-CH_3)=-=))=-=)}}{巴拉刈 paraquat}\par

    結構式以外,也可以用來劃路徑,這常見生物化學反應上面,使用schemestart, schemestop來路徑。例如a反應成b:

    \schemestart

    a \arrow b

    \shemestop

    其中的箭頭,有很多控制要素在裡面,這是我的練習,糖解反應的幾個部驟:

    \schemestart 

    葡萄糖

    \arrow{-U>[*{0.180}ATP][*{0.180}ADP]}[-90]葡萄糖-6-磷酸

    \arrow{<->}[-90]果糖-6-磷酸

    \arrow{-U>[*{0.180}ATP][*{0.180}ADP]}[-90]果糖-1-6-磷酸

    \arrow{<->}[-60]磷酸二羥丙酮

    \arrow{<->}[180]甘油-3-磷酸

    \arrow{-U>[NAD$^+$][NADH]}[180,2]1,3-二磷酸甘油酸

    \arrow{-U>[ADP][ATP]}[110,2]3-磷酸甘油酸

    \arrow{}[120,2,dashed]

    \arrow(@c4--@c6){<->}

    \arrow(@c6--@c7){<-}

    \schemestop

    chemfig套件的說明文件裡面有很多的範例,花一點時間看文件,找幾個範例練習一下,很快就能上手,最後是聚合物,這完全是範例照搬。

    總之,chemfig用來寫含有化學結構式、有機化學、生物化學等等的文章,書本時,是極為方便的工具。

    回應

    限會員,要發表迴響,請先登入
    迴響(1) :
    1樓. paraquat
    2015/03/27 09:50
    % !TEX TS-program = XeLaTeX

    \documentclass[10pt,a4]{ctexart}

    \usepackage{chemfig}

    \begin{document}

    %{\setchemrel{1pt}{2em}{6em} \chemfig{a \chemrel{<>}b}}\par

    %\chemfig{a \chemrel{<>}b}\par

    \chemname{\chemfig{CH_3-N^+*6(-=-(-*6(-=-N^+(-CH_3)=-=))=-=)}}{巴拉刈 paraquat}\par

    \chemname{\chemfig{[:30]CH_3-N^+*6(-=-(-*6(-=-N^+(-CH_3)=-=))=-=)}}{巴拉刈 paraquat}\par

    n-\chemfig{C_4H_5} \chemsign{+} \chemfig{C_2H_2} \chemrel{->} {\tiny\chemfig{[:-30]*6(-=-=-=)}} \chemsign{+} H\par



    \schemestart 

    葡萄糖

    \arrow{-U>[*{0.180}ATP][*{0.180}ADP]}[-90]葡萄糖-6-磷酸

    \arrow{<->}[-90]果糖-6-磷酸

    \arrow{-U>[*{0.180}ATP][*{0.180}ADP]}[-90]果糖-1-6-磷酸

    \arrow{<->}[-60]磷酸二羥丙酮

    \arrow{<->}[180]甘油-3-磷酸

    \arrow{-U>[NAD$^+$][NADH]}[180,2]1,3-二磷酸甘油酸

    \arrow{-U>[*{0.0}ADP][*{0.0}ATP]}[110,2]3-磷酸甘油酸

    \arrow{}[120,2,dashed]

    \arrow(@c4--@c6){<->}

    \arrow(@c6--@c7){<-}

    \schemestop

    \end{document}

    後面聚合物完全是範例,一字不改,就不貼在這裡了。