読者です 読者をやめる 読者になる 読者になる

c-bata web

@c_bata_ のメモ。python多め

卒論を書くための準備をする

はじめに

普段実験のレポートはLaTeXで書いてたんだけど、今のうちにもっと勉強しておかないと、卒論書くときに色々と苦労しそうなのでとりあえず準備しておく。

卒論の管理方法

学生なのでGithubのMicroアカウント(プライベートリポジトリ5個まで作成可能)が無料で登録できた。卒業論文はそこで管理する。

論文の構成はこちらを参考にする。

  1. 文書専用フォルダを作成する。
  2. フォルダ内に、文書作成に必要な全てのファイルを格納する。
  3. 必要なファイルを読み込むように記述をしたルートファイルをタイプセットする。
  4. ルートファイルで指定したファイルを読み込むコマンド \input を使ってファイルを読み込み、ルートファイルと読み込んだ全てのファイル全体で1つのLaTeX素ソースファイルとなるようにする。

具体的には以下のようになった。

$ mkdir document/image
$ touch document/{preemble,title,documentroot,abstract,introduction,problem,analysis,result,conclusion,reference}.tex
$ tree
.
├── README.md
└── document
    ├── abstract.tex
    ├── analysis.tex
    ├── conclusion.tex
    ├── documentroot.tex
    ├── image
    ├── introduction.tex
    ├── preemble.tex
    ├── problem.tex
    ├── reference.tex
    ├── result.tex
    └── title.tex

documentroot.texから各TeXファイルを\inputで読み込む

$ cat document/documentroot.tex
\documentclass{jsbook}

\input preemble.tex     % プリアンブルでのパッケージ読み込みやさまざまな定義を記述
\input title.tex        % タイトル情報

\begin{document}
\maketitle

\input abstract.tex     % アブスト

\tableofcontents

\input introduction.tex % イントロ
\input problem.tex      % 問題
\input analysis.tex     % 解析
\input result.tex       % 結果
\input conclusion.tex   % 結語
\input reference.tex    % 参考文献

\end{document}

上で示したサイトに、分割するメリットが書かれていた。なるほどと思ったので引用しておく。

  • 1つの長大なLaTeXの編集作業から解放されて、適切なサイズのテキストファイルを同時に編集しながら作業できる(相互参照する場合に都合がよい)。
  • \input行を適宜コメントアウトして、部分的にタイプセットできることにより、LaTeX構文エラーの発見が容易になる。
  • 主要目次に相当する部分を1つのファイルに対応させて、組織的に文書を作成することができる(場合によっては、文章を複数人で分担作成し、適当なタイミングでまとめてタイプセットすることで、長大な文書の作成が容易になる)。

卒業論文のような長い文書を作成しているとコンパイルにかなりの時間がかかる。だから作成中の章以外はコメントアウトしておくとコンパイルも高速で、動作確認にはちょうどいいかもしれない。

論文を書くときに参考にしたいこと

自分がPocketに入れていた記事の中から、論文作成に良さそうなものを並べておく。結構精神論的なものもあります。Kesin's diaryさんの記事は論文というよりも卒業研究のプログラムを作成するときに役に立つものなんだけど、とてもためになったので是非読んでほしい。

LaTeXに関しては自分用に作った↓のページにメモしてます。

その他面白そうなこと

スライドをTeXで作成する。

個人的にPowerPointのデザインと文書を分けられない所があまり好きになれなくて、TeXでスライドを作成するっていうのが気になっていた。

TeXでスライドを作成する時はBeamerかpowerdotっていうのを使うらしい。どちらがいいのかちょっと分からないけど、パッと見た感じなんとなくBeamerの方が良さそうな気がする。

テーマを変更することで様々なデザインを利用できるみたいなのですが、こちらを見た感じ、TeXで作ってるとは思えないような本格的なスライドになっていた。これから色んな所で発表する機会が増えると思うので、スライド作成する時はもう一度調べてみたい。

PythonTeX

この前、気になる記事を見つけた。

Matplotlibで作成したグラフをPythonTeXに半自動的にLaTeXドキュメントに埋め込んでいるらしい。TeXファイルの中にPythonのコードを埋め込むことが出来る。

これが果たして卒論を書くときに効率的なのかはよくわからない(逆に面倒くさい気がする)けど、ちょっと気になったのでまた今度調べてみたい。

おわりに

以上、とりあえず論文を書く準備が出来たかな?

これからはまず、PythonやRを使ったデータ分析のプログラムを書いていくことになるので、本格的に卒業論文を作成するのはまだちょっと先の話ですが、アドバイス等ありましたら是非お願いします。