Linuxでのlatexを利用したPDFファイルの作り方について [Linux]
Linux での latex を利用した PDF ファイルの作り方について、ということで前に投稿した genius の examples のプログラムでプロット図を kile を使って PDF 化したときの、メモです。
使った OSは fedora22 workstation で、latex は、dnf install texlive* コマンドでフルインストールしました。多少時間は掛かりますが、そこは我慢。で、今まではserverを使っていたのですが、これだと日本語が使えないみたいだったので、急きょインストールし直しました。(*2015.7.7追記:後で気付いたのですが、どうやらやり方がまずかったせいで、日本語が使えなかったみたいで、texliveをDVDインストールしたら日本語表示できました。ああ~勘違い。)ubuntu でもサーバーバージョンはダメな見たいでした。texliveをインストールすれば、使えるアプリも出てくるので、他に lyx, texworks, texmaker, texstudioもインストールしましたが、アプリ自体から日本語をコンパイルできなかったみたいなので、手頃なコンソール付きのkileが打ってつけのようです。前者はテンプレートである雛形は利用できるので、参考のためにはなるようです。では早速kileを使って作ってみます。まず日本語を認識してもらうためには、\usepackage[utf8]{inputenc}を付けないといけないみたいです。それで、geniusのイグザンプルコードをコピーして、コンパイルします。コードはこれです。
# Category: Analysis
# Name: Cantor's devil staircase function (approximation)
function Ternary(x,n) = (
# only if x in [0,1)
out = null;
for k = 1 to n do (
x = x*3;
fx = floor (x);
x = FractionalPart (x);
out = [out, fx]
)
);
# Cantor function, only really for x in [0,1]
function Cantor(x) = (
if x >= 1 then return 1;
if x <= 0 then return 0;
# Number of steps, the higher the number the more precise the graph
n = 20;
t = Ternary(x,n);
N = n;
for k = 1 to n do (
if t@(k) == 1 then
(N = k; break)
);
1/(2^N) + sum k = 1 to (N-1) do (t@(k)/(2^(k+1)))
);
PlotWindowPresent(); # Make sure the window is raised
LinePlot(Cantor,[0,1]);
これをgeniusから実行するとこんな図がプロットされます。:
これを書き出し(export ...)て挿入するという簡単な仕事です。まずは挿入する前にコードを実行してみます。これには、コンソールからplatexコマンドを使いました。$ platex (ファイル名).tex ですが、ただコピーしただけではエラーです。言語で使われる主要な演算子のものは、実行エラーを引き起こすみたいなので、#は外しました。一行ごとの改行は、\\ を使うようにとログから指示があり、何度か失敗して記号をそのまま表示するには、$記号で囲むと良いみたいなので、囲みました。と、何とか成功したみたいなので、今度は dvipdfmx コマンドでPDFファイルを作ります。後はevince等で確認しました。こんな感じ:
その後図の挿入ですが、kileからもできるのですが、いまいち分からなかったので、ネットの情報を参考にやってみたら、何か変ですが取り敢えず表示できました。全体の仕上がりはこんな感じ:
使い方さえ分かれば、linux での操作は優れものです。dolphin, kile, genius, geany等の連携は外せません。これらは、何に利用できるかというと私にとっては構造計算書類を作るのに便利だと思っています。
追記:texのコードを忘れていたので、載せておきます。
\documentclass[a4paper,10pt]{article}
%\documentclass[a4paper,10pt]{scrartcl}
\usepackage[utf8]{inputenc}
\title{geniusで作る計算式とプロット}
\author{lelolelo}
\date{15.06.25(木)}
\usepackage{graphicx}
\begin{document}
\maketitle プログラムコード
\begin{abstract}
geniusのexamplesの中身は以下の通りです。\\
Category: Analysis\\
Name: Cantor's devil staircase function (approximation)\\
\\
function Ternary(x,n) = (\\
only if x in [0,1)\\
out = null;\\
for k = 1 to n do (\\
x = x*3;\\
fx = floor (x);\\
x = FractionalPart (x); \\
out = [out, fx]\\
)\\
);\\
\\
Cantor function, only really for x in [0,1]\\
function Cantor(x) = (\\
if x $>$= 1 then return 1;\\
if x $<$= 0 then return 0;\\
Number of steps, the higher the number the more precise the graph\\
n = 20;\\
t = Ternary(x,n);\\
N = n;\\
for k = 1 to n do (\\
if t@(k) == 1 then\\
(N = k; break)\\
);\\
\\
$1/(2^N)$ + sum k = 1 to (N-1) do $(t@(k)/(2^(k+1)))$\\
);\\
\\
PlotWindowPresent(); Make sure the window is raised\\
LinePlot(Cantor,[0,1]);\\
\\
このプロット図はこうなります。\\
\begin{figure}
\includegraphics[width=6cm,bb=0 0 200 100]{./plot2.pdf}
% example1.pdf: 0x0 pixel, 300dpi, 0.00x0.00 cm, bb=
\end{figure}
\end{abstract}
\end{document}
fedora22にインストールされた、texliveのバージョンは:
texlive2014
texlive2015
あるいは、それ以前のどれか......
の、どれでしょうか?
また、dnf installを使うと、どのバージョンがインストールされるのでしょうか?
by tex-経験だけは古いユーザ (2015-09-30 11:06)