MATLABプログラミング 質問箱 その2
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2006/11/10(金) 11:28:22http://www.cybernet.co.jp/matlab/
MATLAB 本家
http://www.mathworks.com/
Yahoo MATLAB
http://dir.yahoo.co.jp/Science/Mathematics/Software/MATLAB/
MATLAB入門
http://feedback.mech.fukui-u.ac.jp/matlab/matlab0.htm
MATLAB チュートリアル
http://www-isys.eei.metro-u.ac.jp/~sho/pub/ttmatlab/Index.html
0655デフォルトの名無しさん
2008/08/08(金) 03:24:53--help でも matlab 起動するし。
0656デフォルトの名無しさん
2008/08/08(金) 06:02:13>>652に答えてるのにお前が知ってたらなんなんだよ。。
だいたい呼び出しの時点の引数の数を呼び出す前に知る方法があるわけないし。
何言ってるのかわからんが。
>>616で書いてるのは定義にある引数の数だろ。だったらnargin。
0657デフォルトの名無しさん
2008/08/15(金) 05:55:31surfc(X,Y,Z)
で出る図を png で保存すると、
真っ黒画像が作られるのですが、
みなさんはきちんと保存できたりしますか?
ぐぐってもだれも surf がおかしいとか言っていないようで。
0658デフォルトの名無しさん
2008/08/15(金) 06:18:21各成分を一つずつ表示しようとしてます。edit1=>A(1,1), edit2=>A(1,2), edit3=>A(2,1)という
具合にです。
set(handles.edit1,'string',num2str(A(1,1)));
などとSet文を30個書くのは効率が悪いんで、簡潔に書く方法を探しています。とりあえずevalを
使えばいいのかと思い、
for i=1:30
if rem(i,2)==1
eval(['set(handles.edit' num2str(i) ',''string'','...
'num2str(A(' num2str(ceil(i/2)) ',1)));']);
else
eval(['set(handles.edit' num2str(i) ',''string'','...
'num2str(A(' num2str(2/i) ',2)));']);
end
end
としてみましたが、「evalのインデックスはpositive integerかlogicalでないといけない」みたいな
エラーが出てしまいます。何が悪いんでしょうか。あるいは、eval以外にもっと良い方法があれば
教えてもらえると助かります。
0659デフォルトの名無しさん
2008/08/15(金) 14:37:19その関数を実行して、中で一連の addpath をさせたいのです。
0660デフォルトの名無しさん
2008/08/15(金) 14:41:36とりあえず sprintf のほうが見やすそう。
0661デフォルトの名無しさん
2008/08/15(金) 15:55:16オプションを設定
0662デフォルトの名無しさん
2008/08/15(金) 15:56:25エラーの内容そのまま。
1行づつ、確認しろ。
0663658
2008/08/15(金) 16:53:11うおお、下から3行目の num2str(2/i) は num2str(i/2) とすべきでしたね。evalの性質の理解不足
とか以前の問題でしたorz あと、sprintfを提案してくれた人もありがとう。これからいろいろ試してみます。
0664デフォルトの名無しさん
2008/08/16(土) 03:08:34オプションって surf のオプション?どれ?
0665658
2008/08/16(土) 05:21:46>>658とは逆のケースで、30個のエディットテキストにユーザーが入力した値を、15*2サイズの
行列Aとして格納することを考えています。
guideでエディットテキストを配置すると、対応するm-ファイルにCallback関数が30個自動的に
生成されるので、それぞれの下部に各行列成分への格納文を書けばいいわけですが、やはり非効率的
なので、もっと良い方法を探しています。
この場合、これら30個の自動生成された関数宣言文を削除し、evalなりfevalなりを使って、30個の
関数を変数を使ってまとめて定義するような文を手で打ってもいいんでしょうか? 確かこの手の、
「guideを経由しないでm-ファイルに直打ち」はNGのケースがある、と何かの本で見たことがある
んですが。
あるいは、このような場合での常套手段が他にありましたら教えて下さい。
0666デフォルトの名無しさん
2008/08/17(日) 12:10:20スクリプトでいいならrunでできるけど
関数を呼ぶにははそれと組合せて
function handleを使うとかかな。
それかベタだけど
wd=cd(dir); func; cd(wd);
とか。
0667デフォルトの名無しさん
2008/08/17(日) 12:23:29addpath をしたいだけなので、
スクリプトにして、run で呼べばよさそうですね。ありがとう。
0668デフォルトの名無しさん
2008/08/17(日) 19:18:43何かいい方法がありますでしょうか?
max関数を2回使うことで、大域的な最大値は求まるのですが。。
局所的な最大値を求めるアイデアがどうしても出てきません。。
お願いします。
0669デフォルトの名無しさん
2008/08/17(日) 23:01:34大域的なmax値をNaNで置換して、複数回走らせる
あるいは
元データを微分する
0670デフォルトの名無しさん
2008/08/18(月) 07:09:50局所的な最大値って極大値でいいのか?
いずれにしても「ランダムな行列」がどういうものであるかと
何を「局所的な最大値」と定義するかが決まらないと
答えられないのでは?
0671668
2008/08/18(月) 11:29:38具体的に書くべきでした。
例えば、
1 4 6 8 4 6
4 5 1 9 0 7
4 0 9 4 1 6
4 7 5 9 0 2
とあった場合、3列目の9と4列目の2つの9、6列目の7が最大値(=極大値)
と考えたときです。
お願いします。
0672デフォルトの名無しさん
2008/08/18(月) 22:10:41データの形式としては(x, y)が座標、(R, G, B)が与えたい色として
x y R G B
0.1 -1.1 10 20 30
0.5 0.3 112 30 11
-2.4 3.2 3 15 205
のようにn*5(nは行数)のベクトルデータとなっています。
これを穴があってもいいから通常の画像のように可視化したいんです。
点ごとにプロットする色を変えたらいいのかと思ったんですがうまくいかなくて
0673デフォルトの名無しさん
2008/08/18(月) 22:58:01座標を例えば 1 - 128 に正規化して、I = zeros(128); 後は for ループで
x = data(n,1); y = data(n,2);
I(x,y,1) = data(n,3);
I(x,y,2) = data(n,4);
I(x,y,3) = data(n,5);
とでも格納しなおして imshow するとかそういう単純な話だろ?
>>671
matlab central れ。
0674デフォルトの名無しさん
2008/08/19(火) 04:39:11最適化を止めて次のことをさせたいような場合、どうしたらいいですか?
最適化にはNelder−Meadを使いたいので、Fminuncより
Fminsearchを使いたいです。
Fの値は定義上0より小さくなることはないので、一度0がでてからさらに
パラメター空間でサーチするのは単なる時間の無題です。
Fminsearchのコードがわかれば外にIF節をつけれてFの値が
0になったところで止めさせられるものの、どうしていいかわかりません。
0675デフォルトの名無しさん
2008/08/19(火) 07:27:11みたいなベクトルがあって、[1 2] のある位置を知るのに、
for ループを使わずにすむ方法ってありますか?
matlab ならありそうな気がするのですが
B = [0 1 0 0 0 0 0 0 1 0 0]
が返ってほしい。
0676672
2008/08/19(火) 20:22:10即レスありがとうございます
ちなみに正規化ってどうやったらいいんでしょうか
xの列でソート→代入、yの列でソート→代入じゃ効率悪すぎですよね
手早くやれる方法はありますか?
0677デフォルトの名無しさん
2008/08/19(火) 21:11:550678デフォルトの名無しさん
2008/08/19(火) 21:27:19宿題は自分でやれ
0679デフォルトの名無しさん
2008/08/20(水) 00:42:24randperm
>>676
ソート?なぜにソートが・・・・
low = [1 1];
high = [128 128];
[N, d] = size(data); % d == 5
mini = min(data(:,1:2), [], 1);
maxi = max(data(:,1:2), [], 1);
data(:, 1:2) = data(:,1:2) - repmat(mini, N, 1); % move min to 0
data(:, 1:2) = data(:,1:2) ./ repmat(maxi-mini, N, 1); % [0, 1]
data(:, 1:2) = data(:, 1:2) .* repmat(high-low, N, 1); % [0, high-low]
data(:, 1:2) = data(:, 1:2) + repmat(low, N, 1); % [low, high]
data(:, 1:2) = fix(data(:, 1:2)); % int
0680デフォルトの名無しさん
2008/08/20(水) 02:50:49本質的には、いかにしてCallBack関数をまとめて設定するか、ということだと思います。
0681668
2008/08/20(水) 14:53:04matlab centralにあるということでしょうか?
探してみましたが、わかりませんでした。。
もしよければどれか教えてもらえないでしょうか?
お願いします。
0682デフォルトの名無しさん
2008/08/20(水) 15:05:44extrema.m
0683668
2008/08/20(水) 23:06:13完全に見落としてました。。
これでいけそうです。
ありがとうございました!
0684デフォルトの名無しさん
2008/08/21(木) 10:04:172次関数(ax^2+bx+c)を入力にして、総あたりでa,b,cのパラメータを推定する、というようなことをやっています。
入力をf(x)として、-5<x<5の範囲を見てるのですが、コードは
error=inf;
for a=-10:1:10
for b=-10:1:10
for c=-10:1:10
for t=-5:0.1:5
e=(f(t)-(a*t*t+b*t+c))^2;
if (error>e);
error=e;
end
end
end
end
end
というような感じになってます。これをfor文を使わないでコロンを使った形式にできるものなのでしょうか?
よろしくお願いします。
0685デフォルトの名無しさん
2008/08/21(木) 10:07:19******
for文を使わないことはできますか?
2次関数(ax^2+bx+c)を入力にして、総あたりでa,b,cのパラメータを推定する、というようなことをやっています。
入力をf(x)として、-5<x<5の範囲を見てるのですが、コードは
error=inf;
for a=-10:1:10
for b=-10:1:10
for c=-10:1:10
for t=-5:0.1:5
e=(f(t)-(a*t*t+b*t+c))^2;
if (error>e);
error=e;
end
end
end
end
end
というような感じになってます。これをfor文を使わないでコロンを使った形式にできるものなのでしょうか?
よろしくお願いします。
0686デフォルトの名無しさん
2008/08/21(木) 10:10:21よろしくお願いします。
0687デフォルトの名無しさん
2008/08/21(木) 10:16:19で、あとは min で argmin うけとる。
0688684
2008/08/21(木) 16:35:55ご指摘いただいた方法でできました。
ありがとうございます。
0689デフォルトの名無しさん
2008/08/21(木) 21:09:03だったらrepmatじゃだめじゃね?
ってか俺も今
for a=1:10
for b=1:5
kotae(a,b)=a+b
end
end
って感じのやってるけど、これfor文じゃなくせるの?
0690デフォルトの名無しさん
2008/08/22(金) 00:13:06「500の最大の再帰呼出の制限達しました。制限を変更するには、・・・」
となって動きませんでした。
制限を2000あたりまで変更しても同じ結果で。3000くらいになるとMatlabが
強制終了してしまいました。
これ何か対処法ないでしょうか。。??
0691デフォルトの名無しさん
2008/08/22(金) 02:39:48つか、少しは自分でk
0692デフォルトの名無しさん
2008/08/22(金) 02:56:10なくせう。for 文使うとゲロのろいぞ matlab。
0693デフォルトの名無しさん
2008/08/22(金) 09:31:000694デフォルトの名無しさん
2008/08/22(金) 10:26:09kotaeって10x5のマトリックスになるだろ?
0695684
2008/08/22(金) 17:33:09meshgridというのを使うとてっとり早いです。
行列にして掛け算する、ということです。
687さんがおっしゃった通り、repmatを使ってもできます。
というか、repmatを使ってmeshgridが実装されてるようなイメージです。
0696MATLAB初心者
2008/08/23(土) 12:06:04MATLABをはじめたばかりの初心者なのですが、連番をつけるところで悩んでおります。
文字列の配列で0001、0002、..... 、9999のように整数で任意の桁数にしたいのですが
うまい方法はありませんでしょうか?
エクセルでやっていたときは、上記の場合であれば”000”という文字列と整数の値を結合し
左から4文字を切り出して使用しておりました。
MATLABでもエクセルでやっていたような力技でやるしかないのでしょうか?
もしご存知の方がおりましたら、ご教示いただけませんでしょうか?
よろしくお願いいたします。
0697MATLAB初心者
2008/08/23(土) 12:12:11上記のレスで左から切り出していたというのは誤りで、右から切り出しておりました。
0698デフォルトの名無しさん
2008/08/23(土) 14:51:58ttp://dl.cybernet.co.jp/matlab/support/manual/r13/toolbox/matlab/ref/?/matlab/support/manual/r13/toolbox/matlab/ref/sprintf.shtml
0699MATLAB初心者
2008/08/23(土) 15:46:04ありがとうございます。
大変申し訳ございません。私には、このページではsprintfでたとえば”1”を”00001”と定義する方法が理解できませんでした。
整数を5桁で表して、それを文字型にnum2strか何かで文字列に変換するようなことができるということでしょうか?
私の思い付きではstrcatをつかって696に書いたような力技で書く以外に方法がわかりません。
お手数をおかけしますが、ご教示いただいたページのどれを使用すればよいか教えていただけませんでしょうか?
0700デフォルトの名無しさん
2008/08/23(土) 16:25:44printf フォーマット
でぐぐればいろいろ解説があるよ。
C言語が元だけど自由度がかなり高いから覚えとくとよい
↓とりあえず解決策
str=sprintf('%05d',i)
0701MATLAB初心者
2008/08/23(土) 16:35:09取り合えずというか、そのものずばり私の欲しかった回答を書いていただいて、感謝の限りです。
お忙しい中、どうもありがとうございました。
これからも精進いたします。
0702675
2008/08/26(火) 03:23:35みたいなベクトルがあって、[1 2] のある位置を知るのに、
for ループを使わずにすむ方法ってありますか?
matlab ならありそうな気がするのですが
B = [0 1 0 0 0 0 0 0 1 0 0]
が返ってほしい。
0703デフォルトの名無しさん
2008/08/27(水) 10:05:550704デフォルトの名無しさん
2008/08/28(木) 08:09:50x=find(A==1);
y=find(A==2)-1;
z=intersect(x,y);
B=zeros(1,length(A));
B(z)=1;
もっと簡単なのきぼん
0705デフォルトの名無しさん
2008/08/28(木) 22:26:43((A(1:length(A)-1)+A(2:length(A))).*(A(1:length(A)-1)==1))==3
正の値で且つ後ろ一つは無視する前提
一般性があるかどうかは知らない
0706デフォルトの名無しさん
2008/08/28(木) 22:38:400707デフォルトの名無しさん
2008/08/29(金) 01:15:31レベル低いなあ。
こんなのすらすっと出てこないってことは
よっぽど効率悪いコード書いてるんだろうなお前ら。
0708デフォルトの名無しさん
2008/08/29(金) 01:40:140709デフォルトの名無しさん
2008/08/29(金) 01:46:06スマン
0710デフォルトの名無しさん
2008/08/29(金) 09:07:52勉強になるんだけどな。
0711デフォルトの名無しさん
2008/09/04(木) 13:25:51MATLAB上で画像処理をする際に
画像のある画素(座標)を保存して
さらにその保存した座標のx方向成分だけ読み出すには
どういったコマンドを入力すればいいんですか?
0712デフォルトの名無しさん
2008/09/04(木) 13:42:08まず入門サイトでも読んだ方がはやくね?ってかはやい
0713デフォルトの名無しさん
2008/09/04(木) 16:05:56それについて詳しく解説してある本を知っていたら
誰か紹介していただけないでしょうか。
よろしくお願いします
0714デフォルトの名無しさん
2008/09/08(月) 12:56:090715デフォルトの名無しさん
2008/09/08(月) 18:24:34例えば、
Data1 = 1;
Data2 = 2;
・
・
・
Data30 = 30;
と30個の変数を定義したいとき、for文を使って定義することは可能でしょうか?
0716デフォルトの名無しさん
2008/09/08(月) 23:43:57キーワードを英語でlookforするくらいはしようよ。
>>715
help eval
0717デフォルトの名無しさん
2008/09/09(火) 11:36:43matlabのエディットウィンドウで、文字の挿入ってどうやるんですか?
現状では入力してある行に文字を挿入すると後ろの文字が消えてしまい、
全文入力し直しになってしまうのです、これをwordなどみたいに
文字を挿入したら、文が自動で後ろに移動してくれるようにできないですか?
また、同様にスペースキーも文字間のスペースをあけてくれず
文字を消してしまうのですが?どうしたらいいですか?
OSは vinelinux4
matalab v7.0.1 SP1です
0718デフォルトの名無しさん
2008/09/09(火) 22:12:45キーボードのinsert
0719デフォルトの名無しさん
2008/09/10(水) 13:58:00ボタンを押すとシミュレーションが実行するようにしたんですが、
GUIなしでコマンドから直接実行した場合だと160秒くらいで終わるのに、
なぜかGUIからだと260秒もかかるんですが、
なんでこんなにかかると思いますか?
やってることはまったく変わらないですが・・・。
全然見当がつかん。
プロファイラを実行した状態で GUI 経由でシミュレーションを行って、
時間のかかっている箇所を割り出してから相談してもらった方がよいと思われ。
0721デフォルトの名無しさん
2008/09/11(木) 00:44:20アドバイスありがとう。
実はこういう経験あまりしてなかったんで、
プロファイラとか使ったことなかったんです。
ちょっと調べて割り出してみます。
0722初心者
2008/09/11(木) 01:43:15Cでいうポインタのような概念はMatlabにはないのでしょうか?
0723デフォルトの名無しさん
2008/09/11(木) 01:54:01ないはずだよ
wikipediaにも書いてある
まあ、google codeとかmatlab centralで検索すれば
自作のポインタ関数出て来ても可笑しくないけど
0724デフォルトの名無しさん
2008/09/11(木) 02:15:40デフォはポインタ
渡された変数を編集しようとした時点でコピーが始まる
0725デフォルトの名無しさん
2008/09/11(木) 06:15:09何をしたいのかをはっきりさせて
それをMATLABではどうやるのか、と考える方がいいよ。
他の言語のやり方をそのまま持って来ようとしても
そうは行かない場合は多い。MATLABに限らず。
0726デフォルトの名無しさん
2008/09/14(日) 02:33:41例えば
3,6,4,5,2
4,15,7,5,3
6,4,4,7,3
のような行列があってノイズで15だけ値が大きい場合には、
それを周りの数字に近い値に矯正(たしか平滑?)するにはどうすればいいですか?
自分が知ってるやり方だと、ノイズも含め全ての成分が平均化されてしまいます。
どうにかノイズ以外はそのままの値で、ノイズ部分だけを周りの値に馴染ませたいんです。
0727デフォルトの名無しさん
2008/09/14(日) 02:59:5015を適当に5とかにしたら「馴染んだ」ことになるの?
自分が何をやりたいかをまずは具体的にする。
君以外にそれがわかる人はここにはいないよ。
0728デフォルトの名無しさん
2008/09/14(日) 07:57:320729デフォルトの名無しさん
2008/09/14(日) 12:03:36if ノイズ
平滑
else
なにもしない
0730デフォルトの名無しさん
2008/09/15(月) 07:18:580731デフォルトの名無しさん
2008/09/15(月) 13:38:27新しいやり方を考えればいいだけ。
0732デフォルトの名無しさん
2008/09/17(水) 23:20:14Cのプログラム等に記載するための離散時間系のデジタル1次ローパスフィルタを作るためにMATLABでフィルタの係数を求めようとしています。
そのためのプログラムとして、サンプリングインターバル=6ms、フィルタ周波数=10Hzとして、
omega = 2 * pi * 10
T = 1 / omega
sys = tf(1, [T, 1])
[num, den] = tfdata(sys)
[numd, dend] = c2dm(num, den, 0.006)
として求めると、y[n] = 0.6859 * y[n-1] + (1 - 0.6859) * x[n]という式が求められます。
一方で、連続時間系の1次ローパスフィルタの伝達関数(サンプリングインターバル=6ms、フィルタ周波数=10Hz) G(s) = 1 / (1+Ts) を手計算でz変換を行い、離散系のローパスフィルタの式を求めると、(T = 1 / omega、omega = 2 * pi * 10)
y[n] = 1 / (1+omega*0.006) * y[n-1] + (1 - 1 / (1+omega*0.006)) * x[n]
となるため、値を代入すると、
y[n] = 0.7263 * y[n-1] + (1 – 0.7263) * x[n]
となり、先ほどMATLAB関数から求めた式と乖離が出てきてしまいました。
そこで、有識者の方々にお聞きしたいのは
1.そもそも上記のデジタル1次ローパスフィルタの作り方は間違っているのか?
2.c2dm コマンドの中身がよくわからないが、これは計算誤差が出るようなものなのか?
3.離散系に変換したシステムのボード線図を見て特性を確認したいのだが、その場合
も連続系と同じく
bode(numd, dend)
でよいのか?
長文となってしまい、見にくくて申し訳ありませんがどなたか有識者の方がいらっしゃればご教授ください。
0733デフォルトの名無しさん
2008/09/18(木) 14:54:340734デフォルトの名無しさん
2008/09/18(木) 22:11:28と言いますと・・・?
0735デフォルトの名無しさん
2008/09/18(木) 22:13:54間違いを探したいのなら、
他の数字の組み合わせにしてみて、計算してみるのはどうでしょう?
0736デフォルトの名無しさん
2008/09/18(木) 23:19:11すいません、だいぶ他の数字でもやってみたのですが・・・
基本的な結果としては、低周波(0.01Hz、1Hz)では値の乖離はほとんど見られないのですが、高周波になればなるほどどんどん値が離れていくということになっています・・・
なので、アナログからデジタルに変換するときの計算誤差なのではと思った次第なのですが・・・
MATLAB計算値 手計算値
0.01Hz 0.9996 0.9996
0.5Hz 0.9813 0.9815
5Hz 0.8282 0.8414
10Hz 0.6859 0.7260
どなたかご教授いただけると助かります
0737デフォルトの名無しさん
2008/09/18(木) 23:34:44サンプリングインターバルも変えてみたらどう?
0738デフォルトの名無しさん
2008/09/19(金) 00:13:17MATLAB計算値 手計算値
0.5Hz 12msec 0.9630 0.9637
2Hz 24msec 0.7396 0.7683
0.01Hz 480msec 0.9703 0.9707
10Hz 480msec 0.0000 0.0032
という感じで、サンプリングインターバルが大きくなる、もしくは周波数が大きくなると乖離がどんどん大きくなるといった傾向が見られます。
そこで離散系に直したときのボード線図を見て、連続系のそれとの特性の違いを見たいのですが、離散系に直したシステム
[numd, dend] = c2dm(num, den, 0.006)
bode(numd, dend)
という見方でよろしいのでしょうか?明らかに異なった波形が出てくるので、離散系の場合はボード線図を違う見方で見なければいけないのかなと予想しているのですが。。。
見方がわかりませんので、もしご存知でしたら教えてください。
0739デフォルトの名無しさん
2008/09/19(金) 00:33:01ttp://www.ikko.k.hosei.ac.jp/joomla1506/matlab-topmenu-33/17-matlab20070307.html
0740デフォルトの名無しさん
2008/09/23(火) 00:35:38stem3でつくったグラフを等高線のグラフにそのまま変えたいのですが、
どなたかわかる方いらっしゃいましたらお願いします。
0741デフォルトの名無しさん
2008/09/23(火) 02:50:240742デフォルトの名無しさん
2008/09/23(火) 11:49:33値がどのように分布しているか等高線の方がわかりやすいと思い
変えたいのですが。
0743デフォルトの名無しさん
2008/09/23(火) 15:11:34matlab 等高線
でぐぐれ
0744デフォルトの名無しさん
2008/09/30(火) 15:46:00ファイルguimain.m内で
handles.a=1;
guidata(hObject, handles);
とhandles.aを設定したとき
別のファイルgui2.m内で
handles.aを編集する方法はあるのでしょうか
function gui2(hObject,handles)
handles.a=2;
guidata(hObject, handles);
ではできませんよね?
0745デフォルトの名無しさん
2008/09/30(火) 16:32:46function out = gui2(handles)
handles.a=2;
out = handles;
として、呼び出し側でguidata(hObject, handles); することで解決しました。
0746t
2008/10/07(火) 19:46:19困っています。
0747デフォルトの名無しさん
2008/10/15(水) 20:23:010748デフォルトの名無しさん
2008/10/18(土) 10:33:41構造体使う必要がないならglobal宣言すれば簡単かと
0749デフォルトの名無しさん
2008/10/19(日) 22:46:09どうやったらよいのでしょうか?
試しに
----------------------
z = [
0 0.1 0.3 0.5 0.3 0;
0 0.3 0.5 0.3 0.3 0;
0 0.5 1.0 0.7 0.5 0;
0 0.3 0.5 0.3 0.3 0;
0 0.1 0.3 0.5 0.3 0
];
[x, y] = size(z);
surfc(x, y, z)
----------------------
としたのですが、うまくいきませんでした。
おそらく行列のプロットを理解していない
と思うのですが・・・。
非常に低レベルな質問で申し訳ありませんが、
よろしくお願いします。
0750デフォルトの名無しさん
2008/10/19(日) 23:52:000751749
2008/10/20(月) 00:01:45早速のご回答、ありがとうございます!
無事、3D plot をすることができました。
ありがとうございます!
0752デフォルトの名無しさん
2008/10/23(木) 17:54:34どうやって、変形して最終の形にするのか
見る方法ありませすか?
0753デフォルトの名無しさん
2008/10/23(木) 23:45:04mathematica?
0754デフォルトの名無しさん
2008/10/23(木) 23:47:52シンボリックマスツールズの
■ このスレッドは過去ログ倉庫に格納されています