I am Charmie

メモとログ

2010-01-01から1年間の記事一覧

Table of ContentsにBibliographyの項目を追加

文書のTable of Contents (ToC)を \tableofcontents コマンドで挿入すると,デフォルトではBibliographyがToCのリスト挿入されない.また,List of FiguresやList of Tablesを,それぞれ\listoffigures コマンド,\listoftables コマンドで表示するようにし…

latexで作成したPDFにリンクを埋め込む

hyperref.styというスタイルファイルを使うと,図,表,参考文献にリンクが貼れる.また,\chapterや\sectionなどをPDFのしおり(bookmarks)に変換してくれる.以下のコマンドでOK.\usepackage{hyperref}オプションを設定する事で,文書内のリンクの細かい設…

複数のpptファイルを並べて表示

PowerPoint2003で複数のpptファイルを並べて比較しながら作業する方法.2010では複数のウィンドウを起動出来るが,2003ではシングルウィンドウしか(たぶん)起動できないため,シングルウィンドウを分割する作戦を使う.まずはじめに複数のpptファイルを開く…

bibtexのタイトルを強制的に大文字にする

大文字にしたい文字列を{}で囲めばいいそうだ.

bibtexにおけるアクセント記号

どこの国か知らないけど,名前にアクセント記号をつける時の注意.{}で囲む必要があるそうだ.1: Jo\~{a}oではなく2: Jo{\~a}oアクセント記号によっては1の方法でもちゃんと反映されるけど,アクセント記号を含めて全て{}で囲めば問題ない.

latexのinputとinclude

どちらもtexファイルを読み込むコマンド.修論とか本等の大規模な文書を分割したファイルで管理したい時に使うのかな.includeとinputの違いは,includeは改ページをしてから読み込む文書を追加するのに対して,inputは改ページをせずに文書を追加するぐらい…

latexで複数の表を並べて表示

subfigureパッケージに用意されているsubtableコマンドを使えばできる.ただし,subtableを参照したときの表の番号がひとつ進んでいるというバグがあるので,\addtocounter{table}{-1}と\stepcounter{table}を使って調整してあげる.\usepackage{subfigure}\…

dvioutでlandscapeのdviファイルをちゃんと表示

情報処理学会の論文誌がlandscapeなんだけど,dviファイルをdvioutで正しく表示できなくてイライラしていたけど,解決法が分かった.\documentclass[english]{ipsjpapers}\AtBeginDvi{\special{papersize=A4L}}\special{papersize=297mm,210mm}これで解決.2…

文字列内の最初のトークンを出力

strtoktoken = strtok('str',delimiter);s = 'This is a book, which I gave you.';[token1,rem1] = strtok(s,',');token1 = This is a book[token2,rem2] = strtok(s,'.');token2 = This is a book, which I gave you

表の斜線

texで作成する表に斜線を入れたい時は,slashbox.styを使う.プレアンブルでスタイルファイルを読み込む.\usepackage{slashbox}\begin{table}[tb]\begin{center}\begin{tabular}{|c|c|}\hline\backslashbox{左下}{右上} & \\hline&\end{tabular}\end{center…

matlabのplotの幅

x軸とy軸の最大値と最小値(軸の描画範囲)を指定すると,plotの間隔を微調整できる.

配列の拡張

グレースケールの画像をカラー画像にする方法.といっても,Colorizationではなく,単純にRGBそれぞれのチャンネルに同じグレースケール画像の値を入れたいだけ.imgRGB = cat(3, imgGray, imgGray, imgGray);imgRGB = cat(3, imgR, imgG, imgB);これで終わ…

textscan関数

ファイルからブロック単位でデータを取得する関数.例)ファイル'test.txt'の中身が'%s %d %d'というフォーマット. 頭1行がヘッダ情報.ImageName Width Height1.png 320 2402.png 400 3003.png 160 120・・・100.png 10 8% ファイルオープンfid = fopen('test.…

ファイルからテキストデータを取得

色んな方法がある.fgetl1行単位でファイルからテキスト情報を取得.line = fgetl(fid)得られるデータlineはstring.fgetlがファイルの終端まで来ると,line=-1となる.textscanブロック単位でファイルからテキスト情報を取得.InputText = textscan(fid, '%…

plotyyにデータを追加

MatLabのplotyyで描画したプロットに,更にデータを追加したい時.プロットのハンドル?みたいなものを利用する.例)plotyyでプロットしたy1とy2のデータが最大となる場所に赤丸を追加でプロットする.% y1,y2をplotyyでプロット & AXにプロットのハンドルを…

y軸が異なるプロット

MatLabで共通のx軸を持ち,y軸のみが異なるプロットを一つのグラフに入れたい時.plotyyを使う.x=1:20;y1=exp(x);y2=log(x);plotyy(x, y1, x, y2);

フォルダ名の変更

MatLabでフォルダ名を変更する.movefile(str1,str2);str1,2でそれぞれフォルダ(ファイル)名を指定すれば,指定したフォルダ(ファイル)の名前をstr1->str2と変更する.

subplot

MatLabのsubplot: 複数のグラフや図を一つのplotエリアに描くための関数具体的な使い方はsubplot(m,n,p)プロットエリアをm行n列に分割し,p番目の面に指定した図やグラフを描画する.subplotに限らず,plotでもplotを保存する時に凡例がグラフからはみ出る問…

MatLabの凡例

legend('凡例1', '凡例2', ...);とコマンドすれば凡例がプロット内に表示される.しかし,''内の文字列内にや^があると,texのコマンドのような凡例が表示されてしまう.その原因は,Textオブジェクトの'interpreter'プロパティがデフォルトで'Tex'に設定さ…

非ゼロ要素の出力

nonzeros関数を使用.s = nonzeros(A)列順でAの中の非ゼロ要素からなる列ベクトルをsに返す.非ゼロ要素の数をカウントするにはlength(nozeros(A))として,非ゼロ要素からなる列ベクトルのサイズを調べてあげれば良い.

凡例に名前をつける

cellというのを使うとできるみたい.leg_plot = cell(1,3);for n=1:3 leg_plot{n} = sprintf('plot %d', n);endlegend(leg_plot);ゴリゴリ作るとこんな感じ?% プロットが上書きされないように固定hold onleg_plot = cell(1, 5);color_plot = [1 0 0; 1 1 0;…

ファイル名のパスとファイル名を分離

MatLabで文字列からファイル名とパスを分離する方法.[pathstr, name, ext, versn] = fileparts(filename)それぞれpathstr: ディレクトリ名name: ファイル名(拡張子は含まれない)ext: 拡張子(拡張子の前に.が含まれる)versn: バージョン例)>> filename='./te…

プログラミングのための確率統計

プログラミングのための確率統計平岡和幸オーム社下書きバージョンをダウンロードできる.一般的な確率統計の本とは雰囲気が違うみたい.pdfチェックしてみる.

無参照の変数?

画像のカラーチャンネル数を知りたい時に,今まではsize関数を使って[y,x,c]=size(img);とやっていたけど,[~,~,c]=size(img);とやると余計な変数を定義しなくて済むそうだ.

GPSR

GPSR(Gradient Projection for Sparse Reconstruction)のセットアップMatLabでコンパイルする環境作成>> mex -setup質問通りに素直に進む.Rice Wavelet ToolboxのインストールFilesから適当なファイルをダウンロード.適当な場所でコンパイル.>> compileGP…

ImageMagickで画像の拡大

画像を補間なしで拡大convert original.bmp -scale 100% converted.bmp

MatLabでの論理和・論理積

bitorとbitandという関数を使えば良い。res = bitand(src1, src2);

係数

coeffとratcoeffがある。coeffは式を展開せずに係数を判断し、ratcoeffは式を展開してから係数を判断する。ratcoeffの方が便利。

Maximaの本?

見つけた。後でちゃんと読む。http://www.bekkoame.ne.jp/~ponpoko/KNOPPIX/MaximaBook.pdf

バッチファイルで連番ファイル名

set /a cnt = 0for %%a in (test*.txt) do call :PROCESS "%%a"goto :EOF:PROCESS ren %1 test%cnt%.txt set /a cnt+=1