Wednesday 01 October, 2014 [長年日記] この日を編集
_ [LaTeX] LaTeXによる論文作成の手引き
以前に一度書いたサイトであるがここにある文書は大変参考になる。 書籍としては https://www.amazon.co.jp/dp/4903814157 として出版されている。_ [BSD][RasPi] Raspberry PiでFreeBSDを動かす。(3)
ということでSDカードへの書き込みが終わったのでセットアップして電源を入れるが、HDMI経由のディスプレイに何も映らない。基盤上のLEDは赤と緑と光っているのだが。HDMIコネクタをちょっと押したら一瞬なにかUNIX系の起動画面のようなものが映ったので全く動いていないわけではないと思うのだが。SDカードへの書き込みやディスプレイの交換などしてみたが結局起動が確認できない。なにせSDカードなのでアクセス音さえしないのだから。ネットワークの設定さえわかればリモートログインという手があるので使ったimgの設定を確認しておかないと。
_ [Twitter] 2014年10月1日のつぶやき
- 自然のエネルギーをなめているんだよね。 posted at 09:43:17
- 運動エネルギーなんて問題じゃない、温度が大事なんて言っている時点で何も知らないのが丸分かり。 posted at 09:42:55
- 誰かさんが荒唐無稽な装甲車万能論の知識もどきを自慢しなければこういうことにならなかっただけですね。核爆発にも耐えうる装備があるならずっと休み無く活動しているはずだけど。 togetter.com/li/725407#c162… posted at 09:41:29
- もっとも私が目にする「無臭」というのは別の意味のことが多いけど(違 posted at 09:03:57
- 鍵先生が取り上げられている。ウチにも硫黄の塊も無臭だな。// 御嶽山リポート「硫黄のような臭いが・・・」 東大教授がツッコミ「硫黄は無臭だ」(J-CASTニュース) - Y!ニュース headlines.yahoo.co.jp/hl?a=20140930-… posted at 09:03:27
_ [Twitter] 2014年10月1日のつぶやき
- 自然のエネルギーをなめているんだよね。 posted at 09:43:17
- 運動エネルギーなんて問題じゃない、温度が大事なんて言っている時点で何も知らないのが丸分かり。 posted at 09:42:55
- 誰かさんが荒唐無稽な装甲車万能論の知識もどきを自慢しなければこういうことにならなかっただけですね。核爆発にも耐えうる装備があるならずっと休み無く活動しているはずだけど。 togetter.com/li/725407#c162… posted at 09:41:29
- もっとも私が目にする「無臭」というのは別の意味のことが多いけど(違 posted at 09:03:57
- 鍵先生が取り上げられている。ウチにも硫黄の塊も無臭だな。// 御嶽山リポート「硫黄のような臭いが・・・」 東大教授がツッコミ「硫黄は無臭だ」(J-CASTニュース) - Y!ニュース headlines.yahoo.co.jp/hl?a=20140930-… posted at 09:03:27
Saturday 04 October, 2014 [長年日記] この日を編集
_ [LaTeX] LaTeXで数式を書くには
これはわりと知られていることだけどとりあえずpreambleに\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
を入れておけば特に問題は起こらないはず。defaultでは数式はセンタリングされるけどもし左揃えにしたければオプションを加えて\usepackage[fleqn]{amsmath}
としておけばいいだろう。
今回知ったのはEuler文字といわれるもの。これを使うには
\usepackage{eucal}
を入れる必要がある。物理でも理論系だと必要になることがある。
数式を書くには以前と変わらずにequation環境で
\begin{equation}
\sum^N_{i=1}{x_i} \equiv x_1 + x_2 + \cdots +x_N
\end{equation}
\[
\sum^N_{i=1}{x_i} \equiv x_1 + x_2 + \cdots +x_N
\]
と書けばいい。他に$~$とか
\[~\]
なども同様に使える。
しかし改めて大量の数式を書いているとちょっと変更点があることに気づいた。式が複数行にわたるときに等号位置でそろえるときにはeqnarray
環境を使うというのがふつうだったが、これはすでにobsoleteとされて替わりにalign
環境を使うことが推奨されている。書式はなどは変わらないので環境名を入れ替えるだけで済む。
_ [LaTeX] obsoleteなコマンドはどれ?
LaTeXは枯れた技術ではあるが常に進歩しているので以前使えていたものが使えなくなることは多い。2.09から2eへの変更はその顕著なものであった。ただたいていは後方互換性は残っていたのでだましだまし使えたりすることもあるが、トラブルの元になることがあるTeXは内部での処理が複雑でエラーメッセージだけで原因が分からないことがあるので古いものについては新しいものに置き換えることが必要である。でもどれが古いstyleなのかはわからない。CTANなどで説明を読めば書いてあることもあるのでとりあえずCTANやTeX Wikiを調べるくらいはやっておいた方がいいだろう。 いちいち調べるのが面倒だという人は文書のpreambleに\RequirePackage[l2tabu, orthodox]{nag}
を入れておくとobsoleteなpackageやコマンドがるとWarningを出してくれる。
また数式の場合は
\usepackage[all, warning]{onlyamsmath}
を入れておくとAMSに準拠しないものにはWarningが出る。
ということで私はいつも必ずこれを入れている。
Monday 06 October, 2014 [長年日記] この日を編集
_ [Daily] 久しぶり(?)の台風直撃
台風が近づいて昨夜から強い雨と風が続いている。直撃コースでちょうど昼頃に最接近するらしいので今日は休みにして自宅にこもることにした。予報を見ていろいろと資料を持って帰ってきたのでゆったり読みますか。
今週はNobel Prizeの発表週間である。Webでは時刻がCETなのでJSTだと何時だろうといつも悩む。検索してみたら時刻を変換してくれるサイトがいろいろとあるが、ふとこんなサイトを見つけた。これはなかなか面白い。
_ [LaTeX] フォントの設定
私はLaTeXではほとんど英文しか使わないのでとりあえず少し違った書体を使いたいときにはThe LaTeX Font Catalogueで探したものを使っている。だいたい\usepackage
すれば使えるので設定は簡単である。また一部のものは数式用のフォントもあるのでスライドなどで印象を変えたいときには便利である。
しかしたいていの人は日本語も必要だし私もきちんと設定できたらと思うことがあるが、日本語を使うとき、すなわちpTeXの時のフォントの設定についてはまだ良く理解できていない。以前はpLaTeXで使える日本語フォントがほとんどなかったという事情もあって私もきちんと調べていなかったが、OpenTypeをサポートするotf
パッケージができて以来ずいぶんと使いやすいくなったようである。またフリーのTrueTypeフォントが作られていたり、IPAフォントという使い勝手の良いものが登場したりということでLinuxやBSDでも他の商用OSに負けない日本語環境が整ったといえる。ただ私はまだ使い方がよく分かっていない。
Wednesday 08 October, 2014 [長年日記] この日を編集
_ [LaTeX] 数式内で上付き、下付き
LaTeXで数式を書く時に上付き文字、下付き文字はよく使うので知られているだろう。\[
y = x^2 + y^2
\]
と書くと
\[
y = x^2 + y^2
\]
と表示される。これがいわゆる上付き文字である。しかし前にあるのがmath operatorである場合には
\[
\sum^\infty_{i=0} = x_1 + x_2 + x_3 + \ldots
\]
\[
\sum^\infty_{i=0} = x_1 + x_2 + x_3 + \ldots
\]
というように上付き文字や下付き文字はoperatorである$\Sigma$の上下に入る。
もし_
をつけても下に入らない場合は\mathopで対象をoperatorにする。
\[
\mathop{A}_{a=b}
\]
\[
\mathop{A}_{a=b}
\]
ということで下に入れることができる。
Thursday 09 October, 2014 [長年日記] この日を編集
_ [LaTeX] caption
のフォントサイズ
論文や学会要旨では図のcaption
を本文より文字のサイズを小さくすることが決められていることがある。私がよく使っているarticle.cls
ではdefaultで本文と同じサイズとなっている。仮に
\cation{\small Plot of foo as a function of bar.}
としてもcaption
の本文は小さくなってもその前にあるFigure 1
という文字は変わらない。
そこで使うのがcaption
というpackageである。
\usepackage[margin=10pt,font=small,labelfont=bf,
labelsep=endash]{caption}
というようにcaption
周りを細かく設定することができる。
Saturday 11 October, 2014 [長年日記] この日を編集
_ [LaTeX] LaTeXでプレゼン用slideを作る(1)Prosper
最近になってLaTeXをできるだけ使うようになってslideもLaTeXで書きたいと調べてみた。いわゆるワープロソフトと異なりLaTeXは文書構造をContentsとStyleとで分けて取り扱うので、文書を書くときはとりあえず内容を書いてしまってから全体のStyleを設定すればいいので頭の切り替えがやりやすい。いろいろ修正しているうちに文書の一部だけFont設定や文字サイズが違うとか行間や段落の設定などについて全体をcheckしないといけないことになることはめったにない。 slideを作るときについても広く使われているPowerPointやKeynoteは非常に便利であるが細かい設定ができるだけに一枚一枚の設定が違ってしまうことが起こりうる。そういう点でLaTeXの特徴を生かしてslideを作りたいと調べてみた。私は使ったことがないが以前から有名だったのは
Prosper
というclass
であるそうだ。
documentclassに
% \documentclass{prosper}
と指定してプリアンブルに必要なpackageを
\begin{document}
\begin{slide}{<slide title>}
.
\end{slide}
\end{document}
ということでslideを作ることができる。たとえば付属しているExample.tex
からはこのようなslideができる。
しかしprosperはその後HA-prosperとなったが開発が停止してobsoleteとなっている。現在はこのあと紹介するPowerdotとして開発が続けられている。
Sunday 12 October, 2014 [長年日記] この日を編集
_ [LaTeX] LaTeXでプレゼン用slideを作る (2) Powerdot
前項で述べたようにProsper
は開発中止となったが、それを母体としてPowerdot
というclass
が開発されている。Prosper
を引き継いだだけあって使い方は基本的に似ている。
\documentclass[<class options>]{powerdot}
\pdsetup{<presentation options>}
\begin{document}
\begin{slide}{a slide}
Contents of the slide.
\end{slide}
\section{first section}
\begin{slide}[<slide options>]{another slide}
Contents of the slide.
\end{slide}
\begin{note}{personal note}
The note.
\end{note}
\end{document}
最近はLaTeXのdistributionとしてpdfLaTeX
が人気があるようだが、このPowerdot
とは相性が良くないことが注意点としてよく挙げられている。これはPowerdot
が内部でのgraphcsにPSTricks
を用いているためである。しかし逆にいえばPSTricks
を使いこなせるようになればLaTeX
のみでかなり高度な表現が可能となることを意味する。
最終的な出力はPDFとなるのでAdobe ReaderだけでなくPDFを表示できるツールがあればプレゼンができるというのが強みであると思う。PDFだからいわゆるアニメーション的なことができないと思われがちだが、アニメーションの一コマに当たる分だけページを作り次々と表示をすることでアニメーションに見せるという方法ができる。枚数は増えるが元がPDFなので大した負荷とはならない。
_ [LaTeX] LaTeXでプレゼン用slideを作る(3)Beamer
Powerdot
と並んで広く使われているものがBeamer
というclass
である。
\begin{frame}
\frametitle{There Is No Largest Prime Number}
\framesubtitle{The proof uses \textit{reductio ad absurdum}.}
\begin{theorem}
There is no largest prime number.
\end{theorem}
\begin{proof}
\begin{enumerate}
\item<1-| alert@1> Suppose $p$ were the largest prime number.
\item<2-> Let $q$ be the product of the first $p$ numbers.
\item<3-> Then $q+1$ is not divisible by any of them.
\item<1-> But $q + 1$ is greater than $1$, thus divisible by some prime
number not in the first $p$ numbers.\qedhere
\end{enumerate}
\end{proof}
\end{frame}
こちらはpdfLaTeX
と相性が悪いということはないようである。内部のgraphicsのエンジンとしてはTikZ/PGFを使用している。もちろんEPSなどの取り込みにも問題は無い。付属しているthemeが豊富であるのも嬉しいが、その一方でclassの構造がしっかり規定されているためやや複雑であるがきちんと理解すればきめ細やかなカスタマイズが可能である。
_ [LaTeX][Web] その他のプレゼンツール
記事を書くのにいろいろググっていたらこの類いのプレゼンに用いるツールをまとめているメージが見つかった。 特にpandocというツールはLaTeXだけでなくHTMLやmarkdownなど多くの記法を相互変換できるようでなかなか興味深い。_ [LaTeX] A very minimal introduction to TikZ
今日はこれを読んでTikZの基本的なところを身につけたつもり。でもまだ何か見ないと何も書けないかな。\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw [-] [thin] (0,0) -- (1,1);
\end{tikzpicture}
\end{document}
TikZで図を書くのはtikzpicture
環境内で、\draw
で線や図形を書き色を付けることができるということが分かった。しかしTikZのマニュアルを見てみるとまた違った方法があるようなのでなかなかややこしそう。慣れてきたら以前作った図をちょっとずつ作り直していくといいのかな。Graphics in LaTeX with Tikz!より
Monday 13 October, 2014 [長年日記] この日を編集
_ [LaTeX] PSTricksはどうなのか?
昨日はBeamer
のgraphicsエンジンであるPGF/TikZ
についてdocumentを読んで何となくどんなものなのか分かった。今日は祝日で天気も悪いのでなので続きをやろうかと思ったが、もう一つのgraphicsエンジンであるPSTricksについて調べてみることにした。TUGのページにまとめらているので正式なdocumentやreferenceはすぐに見つかった。Exampleもたくさんあるしかしいろいろ検索していてもtutorialのようなものがなかなか見つからない。やっぱりPostScript
だからだろうか。その点ではPGF/TikZ
のほうが手をつけやすいかも。
たまたま見つけたこのサイトが一番参考になった。これはLaTeX
でPSTricks
を使ってEPSの図を作ろうとされていた。
ということでこの場合には\documentclass{jarticle} \usepackage{pstricks} \usepackage{pst-eps} \begin{document} \TeXtoEPS % この間にコマンドを書く \endTeXtoEPS \end{document}
\TeXtoEPS
というコマンドを使うようである。
まずはキャンバスのようなものを準備する.そして,グリッドがないと座標がわからないので,グリッドを引く.それが次のコマンド.ということでまずは描画するスペースを指定しないといけないようだ。これはEPSのBounding Boxになるのかな。ということで少しヒントになるものをいただきました。あとはコマンドを使ってみないと。
\pspicture の後の数値はキャンバスの左端の座標と右端の座標を表す.数値は何でもいいらしい.\psgrid がグリッドで,その後の数値は \pspicture と同じ.\begin{pspicture}(-1, -1)(10, 7) \psgrid(0, 0)(9, 6) \end{pspicture}
Monday 20 October, 2014 [長年日記] この日を編集
_ [LaTeX] PGF/TikZとPSTricksとの比較(1)Template
最終的にBeamer
とPowerdot
のどちらかを主に使うことになりそうだが、当面はできるだけ併用してそれぞれの特徴をつかんでいこうと思う。まずはそれぞれのgraphicsエンジンであるPGF/TikZ
とPSTricks
をちょっと比較してみよう。
まずは基本的な枠組みを比べてみる。
- PGF/TikZ
%% Sample of TikZ
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
-ここに描画命令が入る -
\end{tikzpicture}
\end{document}
%% Sample of PSTricks
\documentclass{article}
\usepackage{pstricks}
\begin{document}
\begin{pspicture}
-ここに描画命令が入る -
\end{pspicture}
\end{document}
pstricks
というpackageはいわゆるcoreの部分であり描画命令によっては追加のpackageが必要となる。もし手間を省いて全部入りにしたければ
\usepackage{pst-all}
とすればよい。
_ [LaTeX] PGF/TikZとPSTricksとの比較(2)文書または図の作成
- PGF/TikZ
Beamer
がそうであるようにTikZ
はdvipdfmx
との相性が良くない可能性がある。しかしpreambleで
\usepackage[dvipdfmx]{graphicx}
\usepackage{tikz}
とするかここにあるように
\def\pgfsysdriver{pgfsys-dvipdfmx.def}
とするといいらしい。問題がなければ
% latex tikzsample.tex
% dvipdfmx tikzsample.dvi
でPDFが作成される。
dvipdfmx
には対応していないのでdvips
を用いないといけない。
% latex pstsample.tex
% dvips pstsample.dvi
% pstopdf pstsample.ps
でPDFが作成される。
もし作成した図を通常のA4やLatterサイズの文書の中に配置をせず図だけを作りたい場合は
\documentclass{standalone}
とすると図のサイズのPDFが作られて\includegraphics
などで別の文書に取り込むことができる。
Wednesday 22 October, 2014 [長年日記] この日を編集
_ [LaTeX] PGF/TikZとPSTricksとの比較(3)座標
両者とも座標を用いて描画をするが、たまたま座標軸の方向は同じで数学などでグラフを描く(x,y)座標をつかう。ただしscaleの取り方は両者で異なる。
- PGF/TikZ デフォルトで座標軸上の1が10mmとなっている。たとえば10mmの線分をx方向とy方向に書きたいときは、
\begin{tikzpicture}
\draw (0,0) -- (1,0);
\draw (0,0) -- (0,1);
\end{tikzpicture}
とすれば良い。あるいは
\begin{tikzpicture}
\draw (0,1) -- (0,0) -- (1,0);
\end{tikzpicture}
とすることもできる。\draw
は線分を描画する命令である。命令ごとにセミコロンを打つことに注意。
またx方向とy方向とそれぞれで拡大縮小をすることも可能である。
\begin{tikzpicture}[xscale=2,yscale=3]
\draw (0,0) -- (1,1);
\end{tikzpicture}
\begin{pspicture}
\psline (0,0)(1,0)
\psline (0,0)(0,1)
\end{pspicture}
とすれば良い。あるいは
\begin{pspicture}
\psline (0,1)(0,0)(1,0)
\end{pspicture}
とすることもできる。\psline
は線を描画する命令である。こちらではセミコロンを不要である。
またx方向とy方向とそれぞれで拡大縮小をすることも可能である。
\begin{pspicture}
\psset{xunit=20mm,yunit=30mm}
\psline (0,0) (1,1);
\end{pspicture}
として\psset
を使ってパラメータを設定する