MacのGnuplotで日本語や数式を使う
僕は普段レポートでグラフを描くときはGnuplotを使っているが, Macでは文字コードの関係上日本語がバグりまくってしまう.
また, レポート作成にはTeXを使用しているのでせっかくだからTeXの数式をグラフ内に入れられるようにしたい.
ということでTikz(てぃくす) を導入してみた.
参考記事: gnuplotのグラフをTikzに出力してLatex文書に貼り付ける
グラフの作成
まずはGnuplotをインストールする.
$ brew install gnuplot --with-x11
(以前は--latex
といったオプションが必要だったけど今は必要ないみたい)
その後Gnuplotでset term tikz createstyle
とすると, gnuplot-lua-tikz ...というstyファイルやtexファイルが生成されるので, それらをソールファイルと同じディレクトリ or TeXのパスが通っているディレクトリに置く.
グラフの出力は, 例えば正弦波のグラフを出力させる場合
# styファイルたちを生成したあとなら'createstyle'は必要ない set term tikz createstyle set output "graph.tex" plot sin(x) title "hoge"
とするとグラフのファイルが出力され, グラフの準備は完了となる.
TeX側の設定
*.texファイルのプリアンブルに以下の文を追加する.
\usepackage{gnuplot-lua-tikz}
あとは\input
を使えばグラフを出力させることができる.
\figure
環境に入れることでキャプションやラベルをつけることもできる.
\begin{figure} \centering % サイズを変えるときは\resizebox{}{}{}を使う! \resizebox{1.0\hsize}{!}{\input{graph}} \caption{$\sin{x}$} \label{fig:graph} \end{figure}
ただ, texファイルで頑張って図を作っているわけだからコンパイルにすごく時間がかかってしまうのが難点だったり
TeXを使ってるけどいい感じのグラフ描画ソフトが無くてつらいって人は使ってみて欲しいな〜