Octave

plot関数で折れ線グラフと散布図の出力速度を比べる(その1:まずは比べてみよう)

plot()で点の個数が20000弱の散布図を描いて出力しようとしたらとんでもなく時間がかかる。というか相当しばらく放置していないと出力が終わらない。どれくらいかかるのかと思ってネットで調べてみても誰も調べてなさそうなので、僕が調べることにした。 ま…

plot関数とhold onでグラフアニメーションを作る

plot()をはじめとするグラフ描画では2つ以上のグラフを重ねて描く方法としてholdという機能がある。 x=linspace(0,2*pi,100); y1=sin(x); y2=cos(x); plot(x,y1); plot(x,y2); と書くと、最初に描いたsinのグラフは後から描いたcosのグラフに上書きされてし…

find関数の使い方

Octaveにはfind()という関数がある。find()の基本的な構造は IDX=find(X) であるが、ここでXもIDXも一般的にはベクトルと思ってくれてよい*1。この関数の役割はこうだ: find()関数はXの中から0でない要素の位置をIDXで返す。 例えばX=[1,0,2,0,3,4,0,5]とす…

Octaveで異なる大きさのグラフを複数表示する

Octave上で複数のグラフを1つの図の中に入れるには、subplot()を以下のように使えばよい。 x=[0:0.01:2*pi]; y1=[x(:),sin(x(:))]; y2=[x(:),cos(x(:))]; subplot(2,1,1); plot(y1(:,1),y1(:,2)); subplot(2,1,2); plot(y2(:,1),y2(:,2)); この下のグラフを…