ロコリンの雑記

アニメ大好き会社員のロコリンのブログ。2015年卒(修士)の社会人。学生時代(2010年)から続けてるブログなのでエントリによっては学生ブログと社会人ブログになっています。時系列から察して。
 
 
このブログについて
ブログ内検索
カテゴリ
プロフィール

ロコリン

Author:ロコリン
2017年4月から会社員。2015年3月まで大学院生でした。
趣味:アニメ/Twitter/ゲーム/ニコ動
今(2015年2月更新):プリキュア/プリパラ/アイカツ/ごちうさ/艦これ

外部リンク
Twitter

スポンサーサイト 

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[LaTeX] 図表数式番号を通し番号にする・章ごとに分ける 

卒論は大体完成して,プレゼンのスライドも大体できていて,暇なので LaTeX tips を書きます.

ドキュメントクラスを report や jreport, book, jbook などにしている場合,\chapter コマンドによって章を作ることができます.図や表,数式などの番号は「章番号.章内の通し番号」になります.

ですが,なんか知らないんですけど,私の学校の卒論では図表数式番号を論文全体の通し番号にしないといけないみたいです.簡単に直せるだろう,そう思っていた時期が私にもありました (AA 略).あんまり簡単にはいかないみたいですね.

そこで,解決策を一生懸命調べました.これで解決です.

1 通し番号にする

1.1 remreset.sty のダウンロード

CTAN から remreset.sty をダウンロードする必要があります.

remreset.sty は CTAN の「Carlisle – David Carlisle's small pack­ages」の中にありますので,下記より zip アーカイブをダウンロードすればいいと思います.

ダウンロードした carlisle.zip を以下のディレクトリに展開してください.

(TeX ディレクトリ)/share/texmf/tex/latex

1.2 TeX ファイルの編集

通し番号にしたい TeX ファイルのプリアンブルに下記を追記してください.(スタイルファイルに書く場合は \makeatletter と \makeatother は消しておkです.)

\usepackage{remreset}	% removefromreset に使う

\makeatletter
	\@removefromreset{figure}{chapter}
	\def\thefigure{\arabic{figure}}

	\@removefromreset{table}{chapter}
	\def\thetable{\arabic{table}}

	\@removefromreset{equation}{chapter}
	\def\theequation{\arabic{equation}}

	%\@removefromreset{subfigure}{chapter}
	%\def\thesubfigure{(\alph{subfigure})}
	%\def\p@subfigure{\arabic{figure}}
	%\@removefromreset{subtable}{chapter}
	%\def\thesubtable{(\alph{subtable})}
	%\def\p@subtable{\arabic{table}}
	%最新の TeX では \subfigure, \subtable は廃止されている。(代替コマンド: \subcaption)
\makeatother

これでおkです.図,表,数式だけでなく,subfigure や subtable にも対応させました.( ・´ー・`)どやぁ.

(2013年7月17日追記.) 最新の TeX では subfigure パッケージは廃止されています。したがって,上記の subfigure, subtable 向けの設定は削除してください。(今はコメントアウトしてあるのでそのままコピペでも大丈夫です。) 現在,subfigure や subtable などの代替コマンドとして subcaption があります。

2 節ごとに分ける

article や jarticle, jsarticle などでは,デフォルトで通し番号になっていると思います.で,逆にこれらのドキュメントクラスで節ごとに図表数式番号を分けたいときもあるかと思いますので,ついでに載せときます.

プリアンブルに次のように書くだけでおkです.(スタイルファイルに書く場合は \makeatletter と \makeatother は消しておkです.)

\makeatletter
	\renewcommand{\theequation}{% 式番号の付け方
	\thesection.\arabic{equation}}
	\@addtoreset{equation}{section}

	\renewcommand{\thefigure}{% 図番号の付け方
	\thesection.\arabic{figure}}
	\@addtoreset{figure}{section}

	\renewcommand{\thetable}{% 表番号の付け方
	\thesection.\arabic{table}}
	\@addtoreset{table}{section}
\makeatother

subfigure.sty パッケージを使う場合は,上記宣言の前ではなく,後に \usepackage{subfigure} を入力してください.

3 補足

listings を使う場合

文書中にソースコードを埋め込める listings.sty を使う人向けに補足します.(使わない人には関係ありません.)

lstlisting 環境のリスト番号を「節.リスト」→「通し番号」にするには次のようにします.

\usepackage{remreset}	% removefromreset に使う

\makeatletter
	\AtBeginDocument{
	\@removefromreset{lstlisting}{chapter}
	\def\thelstlisting{\arabic{lstlisting}}}
\makeatother

lstlisting 環境のリスト番号を「通し番号」→「章.リスト」にするには次のようにします.

\makeatletter
	\AtBeginDocument{% リスト番号の付け方
	\renewcommand*{\thelstlisting}{\arabic{section}.\arabic{lstlisting}}%
	\@addtoreset{lstlisting}{section}}
\makeatother

図や表との違いは \AtBeginDocument{ 〜 } で囲まないといけないことですね.

参考文献

  1. [Tex] 図を通し番号で表示する【OKWave】
  2. http://svn.amachos.com/i4papers/deliverables/d16/packages.sty
スポンサーサイト
コメント
卒業論文を書いていてlistingsの通し番号に困っていたので助かりました
Re: タイトルなし
> 卒業論文を書いていてlistingsの通し番号に困っていたので助かりました

コメントありがとうございます。
お役に立てて何よりです。














 管理者にだけ表示を許可する

トラックバック
 
http://rexpit.blog29.fc2.com/tb.php/99-4625892f
最新記事
最新コメント
FC2カウンタ
やりたいゲーム

艦これはやってる

神姫PROJECT かんぱに☆ガールズ オンラインゲーム ロードオブワルキューレ オンラインゲーム
欲しい
最近買ったもの
Amazon 検索
 
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。