1 名前:デフォルトの名無しさん [2006/11/10(金) 11:28:22 ] MATLAB 日本語版 www.cybernet.co.jp/matlab/ MATLAB 本家 www.mathworks.com/ Yahoo MATLAB dir.yahoo.co.jp/Science/Mathematics/Software/MATLAB/ MATLAB入門 feedback.mech.fukui-u.ac.jp/matlab/matlab0.htm MATLAB チュートリアル www-isys.eei.metro-u.ac.jp/~sho/pub/ttmatlab/Index.html
740 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 00:35:38 ] matlabをはじめたばかりなんですが質問です。 stem3でつくったグラフを等高線のグラフにそのまま変えたいのですが、 どなたかわかる方いらっしゃいましたらお願いします。
741 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 02:50:24 ] ステムを輪切りにして上から見て、意味あるの?
742 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 11:49:33 ] >741 値がどのように分布しているか等高線の方がわかりやすいと思い 変えたいのですが。
743 名前:デフォルトの名無しさん mailto:sage [2008/09/23(火) 15:11:34 ] >>742 matlab 等高線 でぐぐれ
744 名前:デフォルトの名無しさん [2008/09/30(火) 15:46:00 ] GUIのプログラムについての質問です ファイルguimain.m内で handles.a=1; guidata(hObject, handles); とhandles.aを設定したとき 別のファイルgui2.m内で handles.aを編集する方法はあるのでしょうか function gui2(hObject,handles) handles.a=2; guidata(hObject, handles); ではできませんよね?
745 名前:デフォルトの名無しさん [2008/09/30(火) 16:32:46 ] 効率はわかりませんが function out = gui2(handles) handles.a=2; out = handles; として、呼び出し側でguidata(hObject, handles); することで解決しました。
746 名前:t [2008/10/07(火) 19:46:19 ] ベルヌーイの螺旋を描ける方いらっしゃいませんか? 困っています。
747 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 20:23:01 ] 描けるよ
748 名前:デフォルトの名無しさん mailto:sage [2008/10/18(土) 10:33:41 ] >>745 構造体使う必要がないならglobal宣言すれば簡単かと
749 名前:デフォルトの名無しさん [2008/10/19(日) 22:46:09 ] z = f(x, y) を、3次元プロットしたいのですが、 どうやったらよいのでしょうか? 試しに ---------------------- 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) ---------------------- としたのですが、うまくいきませんでした。 おそらく行列のプロットを理解していない と思うのですが・・・。 非常に低レベルな質問で申し訳ありませんが、 よろしくお願いします。
750 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 23:52:00 ] mesh(z)でどうだ
751 名前:749 [2008/10/20(月) 00:01:45 ] >>750 様 早速のご回答、ありがとうございます! 無事、3D plot をすることができました。 ありがとうございます!
752 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 17:54:34 ] MATLABで式の簡単にする変形を一ステップずつやって どうやって、変形して最終の形にするのか 見る方法ありませすか?
753 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 23:45:04 ] 意味がわからない。 mathematica?
754 名前:デフォルトの名無しさん mailto:sage [2008/10/23(木) 23:47:52 ] シンプリファイとかやるときの途中の式がしりたい。 シンボリックマスツールズの
755 名前:いかわ [2008/10/24(金) 15:35:48 ] '"2008-09-23 02:30:00.1"' というフォーマットで書かれたストリングのセルから時間データを抽出するよいアイディアをどなたかご存知でないでしょうか? もしも、''がなく、"2008-09-23 02:30:00.1" というフォーマットならば、sscanf(%d-%d-%d %d:%d:%d); によって時間データを抽出できるのですが。。
756 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 20:06:56 ] 日付の区切りがスラッシュにかわったりしただけでも どうすればいいかわからなくなるのかなこういう人は・・。
757 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 04:01:54 ] だれか Matlab compiler で matllab スクリプトコンパイルして、 C で使ったことある人いない? ttp://www.mathworks.com/access/helpdesk/help/toolbox/compiler/index.html?/access/helpdesk/help/toolbox/compiler/f2-972343.html これの通りやってみて、C をコンパイルできるようにまでは持って いったんだけど、実行すると libmatrixInitialization: unhandled exception と出る。なにが足りないんでしょうかね?
758 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 05:49:28 ] 愛
759 名前:デフォルトの名無しさん mailto:sage [2008/10/25(土) 10:11:57 ] >>757 回答にはなってないかもしれんけど、 おいらは、加えてBuilder for .NETを使ってMファイルを.NETコンポーネント化 してから、.NET系言語から、そのコンポーネント呼び出して使ってるよ。
760 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 15:42:45 ] A=zeros(100000,100000); だけでメモリ不足になります 余分な変数消去や仮想メモリ等をいじってみましたが効果はありませんでした これを解消するには結局メモリ増設しかないのでしょうか?
761 名前:デフォルトの名無しさん mailto:sage [2008/10/27(月) 16:38:49 ] >>760 メモリ増設しても無理じゃね? 100000*100000って、数値だけで10Gになるからアクセスすることさえ厄介になってくると思う。 メモリ量的には更に数倍になるわけで、オンメモリで処理するのはどうせ無理だし。
762 名前:760 mailto:sage [2008/10/27(月) 18:09:13 ] >>761 さん ご回答ありがとうございます 低レベルな質問ですみませんでした このような行列はMATLABではそもそも扱えない(普通は扱わない)と考えてよいのでしょうか? 株価のシミュレーションでforを使うより行列を使った方が早いため あのような行列が処理できると助かったのですが
763 名前:デフォルトの名無しさん mailto:sage [2008/10/28(火) 01:30:51 ] 「普通のPC」では扱えない というのが正解かと。 10Gのメモリっていうといわゆるスーパーコンピューターの領域
764 名前:デフォルトの名無しさん [2008/10/30(木) 04:26:55 ] たとえば*を増やしていって、 処理の進行状況を表示したいのですが、 改行を抑制する方法はありませんか?
765 名前:デフォルトの名無しさん mailto:sage [2008/10/30(木) 21:20:25 ] 質問です 複素数の実部虚部それぞれ七桁で表示させたいのですが zに複素数が入っていて sprintf('%7f',z) とすると実部だけが七桁で表示されてしまいます どうしたらよいでしょうか?
766 名前:デフォルトの名無しさん mailto:sage [2008/10/30(木) 22:41:17 ] 関数realとimagを使用して実部と虚部を取り出せばいいじゃない
767 名前:デフォルトの名無しさん [2008/10/30(木) 23:07:49 ] サポート受けられないということは、ここの住人はコピーや労か
768 名前:デフォルトの名無しさん [2008/10/31(金) 00:06:48 ] >>764 なんで今どうやってるのか書かないの?
769 名前:デフォルトの名無しさん mailto:sage [2008/10/31(金) 14:35:01 ] >>766 ありがとうございます sprintf('%7f %+7f',real(z) imag(z)i) のような感じでしょうか? 今試せる環境ではないのでiとかがどうなるのかよく分かりませんが・・・・・
770 名前:デフォルトの名無しさん mailto:sage [2008/10/31(金) 19:10:46 ] 教えてください。 1辺の長さが1の正三角形を上下に並べて出来る平行四辺形をプロットして、 それに含まれるかどうかの判定をしたいのですが、判定条件はどうしたらいいでしょうか。 N個の点を行列で与えて、図形に入っていれば赤、入っていなければ黒という風に 表示させたいのです。 よろしくお願いします
771 名前:デフォルトの名無しさん mailto:sage [2008/10/31(金) 19:25:24 ] >>769 +の位置が不適切だけどそれを直せばイケル
772 名前:デフォルトの名無しさん mailto:sage [2008/11/01(土) 17:39:35 ] >>771 すいませんまだ試せていないんですがこうすると実数値の場合に 3+0i みたいな表示になっちゃいませんかね? もっと簡単にできる方法ないですかね
773 名前:デフォルトの名無しさん [2008/11/07(金) 14:26:53 ] 質問があります 例えばデータシートが1000枚あって、各データシートからX,Y,Zの値を取り出して、 座標(X,Y,Z)をplot3でプロットします。これがこのシートの3次元での点(位置)になりますよね。 それを1000枚分やると3次元空間に点が1000点でき、動きの軌道のように繋がって表示されます(そういうデータなので)。 問題は次なのですが、数十点ほど動きの軌道からはみ出してプロットされた点(多分計測時のノイズ)が 存在します。なのでプロット点全体を平滑化したいのですが、三次元プロットした点をフィルタするのは 可能なんでしょうか。 よろしくお願いします
774 名前:デフォルトの名無しさん [2008/11/07(金) 21:04:04 ] >>773 成分ごとにやれば?
775 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 07:04:44 ] 結局の所作業としてはプロットした点をフィルタせずに フィルタしてからプロットするんでしょ?
776 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 09:03:51 ] Matlab C ライブラリの関数 mlfMatrixPrint とか mlfLength とかってどこに行ったの? 昔は matlab.h ってのがあったみたいなんだが、 R2007b だけど、ないんだよね。 matlab 内のビルトイン関数を C から直接呼び出せなくなったの?
777 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 14:40:02 ] 私は>>675 じゃないんですけど >>675 の解決策ってありますか?
778 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 07:24:17 ] スレを675以降もネットリと見てみよう
779 名前:デフォルトの名無しさん [2008/11/10(月) 20:04:54 ] こんばんは。最近MATLABで動画像処理を始めたものですが、 250*350でフレーム数200のAVIの動画をRGBで格納するために T=zeros(250,350,3,200) としてみたのですが、メモリが足りませんと出てしまいました。 解決策がわかりません ちなみにPCはXP Core(TM)2 Duo CPU メモリ2Gを使っています。 よろしくお願いします
780 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 22:36:17 ] [A;B]という行列(n行m列)から [A;A;B;B]という行列(n^2行m列)をfor文を 使わずに 作りたいのですが可能でしょうか。 基礎的な質問でしょうがよろしくお願いします。
781 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 23:00:26 ] >>780 [A;A;B;B]だったらn*2行m列だと思うんですが。
782 名前:780 mailto:sage [2008/11/10(月) 23:08:49 ] 例が分かりづらくて済みません。別の例ですが[A;B;C]という行列だったら [A;A;A;B;B;B;C;C;C]という行列を作りたいのです。
783 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 23:58:44 ] >>779 メモリが足りないのものはしょうがないのである。 本当に全部格納しなければいけないのか考えてみるのである
784 名前:デフォルトの名無しさん mailto:sage [2008/11/11(火) 00:01:09 ] >>782 つまり *3 でいいんだね? X = [A;B;C] からA, B, C の分解は終わっているものとする。 Y = [repmat(A, 3, 1); repmat(B, 3, 1); repmat(C, 3, 1)]
785 名前:780 mailto:sage [2008/11/11(火) 00:57:46 ] >>784 ありがとうございます。確かに直接記述すればそうなるんですが、 行列の行数が任意の数nであってもそのような行列が作れるか 、つまり各行ベクトルをn個並べてn^2行の行列を作れるかということが 分からないんです。
786 名前:デフォルトの名無しさん mailto:sage [2008/11/11(火) 06:44:37 ] matlab Mex で X(1,:) ってどうやんの?
787 名前:デフォルトの名無しさん mailto:sage [2008/11/11(火) 10:22:08 ] >>785 repmat(x, 1, length(x))
788 名前:780 mailto:sage [2008/11/11(火) 13:01:35 ] >>787 おかげで解決しましたーありがとうございます。
789 名前:デフォルトの名無しさん [2008/11/11(火) 18:11:41 ] [id,check] = textread('01.txt','%s%s'); と読み込んだ後 id とすると中身があるのは確認できるのですが fprintf('filename','%s',id); というふうにして書き込もうとするとFunction is not defined for 'cell' inputs. というエラーがでてidをtxtに書き込むことができません。 textreadで読み込んだidをtxtに書き込むにはどのようにすればよいでしょうか? よろしくお願いします。
790 名前:デフォルトの名無しさん mailto:sage [2008/11/11(火) 21:31:48 ] >>789 www.excite.co.jp/world/
791 名前:789 [2008/11/12(水) 16:00:23 ] >>789 エラーの内容は分かったんですけれど セルをtxtに書き込めるようにする方法が調べてみてもよく分かりません もしよかったら教えてもらえませんか? よろしくお願いします。
792 名前:シン [2008/11/14(金) 12:57:46 ] MATRABのプログラムで、x1=0、x2=1.2 x3=2.1 x4=3.5 y1=0.3 y2=1.2 y3=2.4 y4=2.7 の4点のラグランジュ補間をとりグラフを出力したいのですが教えてください 。できればfor文をつかった形式でお願いします。あと範囲は0<x<10です。
793 名前:デフォルトの名無しさん mailto:sage [2008/11/14(金) 18:27:37 ] レベル低過ぎ 説明書読め
794 名前:デフォルトの名無しさん mailto:sage [2008/11/14(金) 21:16:11 ] MATLABわかる人 pc11.2ch.net/test/read.cgi/tech/1226576323/l50 スレからのマルチポスト
795 名前:デフォルトの名無しさん [2008/11/15(土) 17:26:18 ] MATLABのプログラムで、xy平面上の点P(i)=(x(i),y(i)), i=1,2,3,4,5について 5個の点P(i)を適当に設定し、これらの点を順に線分で結んでできる多角形の図を作れ。ただし各点P(i)は*印で示すこと 最後の点P(5)を最初の点P(1)に結んでみよ。 のプログラムを作りたいんですけど、誰かわかる方教えてください。
796 名前:デフォルトの名無しさん mailto:sage [2008/11/16(日) 12:12:10 ] >>792 plot([1:10], lagrange(x, y)); >>795 line(x, y, '*'); 宿題は宿題スレに頼めよ
797 名前:デフォルトの名無しさん [2008/11/16(日) 13:49:26 ] 宿題スレのURL教えて!
798 名前:770 mailto:sage [2008/11/17(月) 07:40:28 ] ショボーン(´・ω・`)
799 名前:デフォルトの名無しさん mailto:sage [2008/11/17(月) 11:33:58 ] >>770 まはやMATLABですらねぇな 三角形の中に点があるかどうかは時計回り(または反時計回り)に 各辺を回ったときに常に辺から左側(または右側)に点があるかどうかでわかる N角形〜閉曲線の場合でも一緒
800 名前:デフォルトの名無しさん [2008/11/18(火) 19:50:56 ] MATLABで2の5乗根の値を出したいのですが何かいい関数がありませんか? よろしくお願いします
801 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 22:09:27 ] 2^(1/5)
802 名前:800 mailto:sage [2008/11/19(水) 15:32:16 ] ありがとうございます。
803 名前:デフォルトの名無しさん [2008/11/20(木) 14:09:32 ] 質問です。 MATLAB5.0でフォルダ内のファイル全てに同じ処理を施すようにしたいのですが、 どのようにしたらいいでしょうか? サンプルプログラムを書いていただけたらうれしいです。
804 名前:デフォルトの名無しさん mailto:sage [2008/11/20(木) 14:58:26 ] 自分でかけよ
805 名前:デフォルトの名無しさん [2008/11/20(木) 17:45:43 ] こんばんは。 MATLABで近似曲線を描きたい場合、データがXとYの2軸のグラフでプロットされてるなら、 近似曲線用のコマンドがあるのでできます。しかし今回はXYZの三軸の要素があるデータをplot3コマンドで グラフ化したものに近似曲線をひきたいと考えていて、方法をずっと考えていたのですが全く思い浮かびません。 どなたかアイデアがありませんか?
806 名前: ◆DcKrXqTCB2 mailto:sage [2008/11/22(土) 04:46:22 ] >>803 name=dir ------- gnuplotを、Windows 2000のOctave Ver3.1.50 Winows で使いたい、どうすれば?
807 名前:デフォルトの名無しさん [2008/11/22(土) 13:26:48 ] 工学系の学生です。質問させてください。 常微分方程式の境界値問題用のbvp4cソルバや、偏微分方程式のpdeソルバは様々な微分方程式で汎用的に使えるものなのでしょうか。 実験系の研究室にも関わらず、実験結果を説明するための数値計算をやらなくてはいけないことになってしまったのですが、 自分でコードを作る技術がなく、既存のソルバで手早く計算できないものかと思っています。 情けない質問ですがよろしくお願いします。 これらのソルバを使う時に収束性や初期値の設定等にコツが必要でしたら、そのコツについても教えていただけませんしょうか。 「この本を読め!」でもうれしいです。 勉強用にこれ↓を買おうと思ってます。もっと良い本ってありますかね。 ttp://www.amazon.co.jp/MATLAB%E6%95%B0%E5%80%A4%E8%A7%A3%E6%9E%90-G-J-Borse/dp/427402380X
808 名前:p [2008/11/23(日) 09:07:11 ] 上の本、高いですね−。 質問です。 plotで線をつなげずにヒストグラムのように描くにはどうすればいいですか? (データは600行ほどのテキストファイルで、それぞれの行に数値が入っています。 それをdlmreadで読み込んでplotしたら横の軸は600までで思い通りなのですが それぞれのデータ点がつながってplotされてしまいました)
809 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 12:19:59 ] hist()があるよ
810 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 12:21:35 ] アッコにおまかせでやっていたけど、 古物商の免許を取って古本屋で、売れ残りかつ専門的な本を安値で買って アマゾンで売るという商売で月にだいたい10万円、多いときで30万円 の商売している人がいるらしいよ。 >>807 の紹介した本もそういう人が提供している可能性大だね。 ではではノシ
811 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 16:42:29 ] アッコにおまかせで微分方程式 まで読んだ。
812 名前:p [2008/11/24(月) 19:25:16 ] 809さん、hist()をうまく使えばいいんですね!ありがとうございます。
813 名前:age [2008/11/26(水) 00:56:33 ] MATLAB R2008b studentバージョン を買いました。 mccを実行しようとしたところ、mccは用意されてなかったみたいです。 studentバージョンだからですか?
814 名前:デフォルトの名無しさん mailto:sage [2008/11/28(金) 14:04:59 ] matlabの正式バージョンってマジでいくらするんですか?
815 名前:デフォルトの名無しさん mailto:sage [2008/11/29(土) 17:04:20 ] >>814 MATLABだけ?それとも、Simulinkも? まぁ、国産の軽〜高級車くらい見ておけばいいんでない?
816 名前:デフォルトの名無しさん mailto:sage [2008/11/29(土) 22:52:25 ] 随分幅のある例を出してきたな。10倍以上あるじゃないか。
817 名前:デフォルトの名無しさん mailto:sage [2008/12/01(月) 19:50:28 ] ライセンスは細かく分かれているから、組み合わせでかなり変わるしな。
818 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 13:38:54 ] 今日、MATLAB EXPOやってるな 聞いてくれば?
819 名前:デフォルトの名無しさん mailto:sage [2008/12/05(金) 22:31:49 ] ある計算で、メモリ不足に陥っています。 512MB×4のメモリから、2G×2のメモリに増設しました。 zerosでどれだけのサイズを確保できるかを試したんですが、増設しても変わりありませんでした・・・。 10000×10000のゼロ行列でメモリ不足に陥ります。 サイズ増やせると期待したのですが、こんなもんなんでしょうか。 問題の計算のほうも改善できませんでした。どこかおかしいところがあればアドバイスお願いします。 バージョンはR2006b、OSは32bitXPです。
820 名前:デフォルトの名無しさん mailto:sage [2008/12/05(金) 23:17:47 ] 10000x10000x8bytes=80,000,000 100Mそこそこだから確保は出来るはずだが、他にも巨大な変数があったら不明 メモリが断片化してる可能性もあるのでpackコマンドを使ってみる それでも足りなければ↓に従い64bitOSを使うなどの対処を。 www.cybernet.co.jp/matlab/support/techkwdb/search_view.php?id=1628
821 名前:デフォルトの名無しさん mailto:sage [2008/12/05(金) 23:47:44 ] 覆面算をエクセルのマクロで解きたいのですが教えてください B、C、Dは0を除外 C A B +) B A C ---------------------- D A B A
822 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 00:31:47 ] >>820 800M だべ? >>819 他のソフトも入れて (matlab 自体もいれて)、 32bit CPU && Windows なら 2GB の壁があるから、 そんなもんじゃねーがの。
823 名前:820 mailto:sage [2008/12/06(土) 14:35:28 ] >>882 おおう 単純な計算ミスorz 仮想メモリもふやして一応matlabが2G使えるはずだけど800Mなら他の変数しだいか。 やっぱ64bitでやるとかコマンドラインモードでやるとかが必要かもねえ
824 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 15:21:17 ] >>820 >>823 有難う御座います。 clearやって不要な変数などは一切消去して試した結果です。 因みにタスクマネージャーでmatlabのメモリ使用量みたら700M程度でした。 ウィンドウとか最小化すると200Mまで減ったりしますが、こんなもんでしょうか。。 やっぱり64ビット環境かぁ。。。 その場合、ゼロ行列ではどれだけのサイズが確保可能になるんでしょうか?
825 名前:デフォルトの名無しさん mailto:sage [2008/12/06(土) 20:36:07 ] 変数名を文字列に変換することって出来ないのでしょうか? 例えば、行列Aのプロット結果のtitleに「plot of A」とか書きたいんだけど、数が多くて手入力では限界が・・・
826 名前:デフォルトの名無しさん [2008/12/09(火) 00:28:04 ] その変数をシングルクォートではさめば文字列になるよ。
827 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 03:06:40 ] >>825 文字列から変数っつーか、式に eval で変換する、ほうが楽かも
828 名前:825 mailto:sage [2008/12/09(火) 21:52:58 ] >>826 >>827 アドバイスありがとうございます。しかし私の説明が不十分でした。 私がやりたいことは、例えば、 func = [1 2 3] plot(func) で[1 2 3]がプロットされますが、そのタイトルに'func'を含めたいのです。 title(func) ではfuncの中身、つまり[1 2 3]がタイトルに表示されてしまいます。 title('func') だと、funcとは表示されますが、変数名自信(funcの部分)が変わる場合には自動で対応できません。 そこで、別変数(例えばfunc_name)に変数名を格納できれば title(func_name) とすることで、自動でタイトルを付けることが出来ると思ったのです。 そういう関数とかないかなと探しているのですが、なんだかなさそうな気配です・・・
829 名前:デフォルトの名無しさん [2008/12/09(火) 22:41:47 ] title('func')だと自動対応できない、というが その例で変数名が変わったとき plot(func)は対応できるの? 君自身、自分が何をやりたいかが 分かってないのではないか。
830 名前:デフォルトの名無しさん mailto:sage [2008/12/09(火) 23:42:36 ] >>828 だから、変数名を格納して、eval で展開すれば、というとるやんけ
831 名前:デフォルトの名無しさん [2008/12/10(水) 03:25:58 ] eval使わなくてもMATLABには>825の目的の機能があるよ。 825が何やりたいかちゃんと説明できてないから予想だけど。
832 名前:デフォルトの名無しさん mailto:sage [2008/12/10(水) 06:55:04 ] >>831 その予想を書けよ。言われる前に書けよ。
833 名前:デフォルトの名無しさん [2008/12/10(水) 23:04:31 ] まともに質問できない人には質問になってないよって 教えてあげるのが親切ってもんだよ。
834 名前:825 mailto:sage [2008/12/11(木) 00:09:46 ] 不評を買ってしまったようで・・・ 実はプログラミング自体にあまり慣れていないもので、上手く伝えることが出来ないみたいです。 アドバイスを元にもうちょっと試行錯誤してみようと思います。 >>829 そこは泥臭い手法を採ってまして・・・ あまりに下手なので説明は遠慮させていただきます。 泥臭くて良いのなら引数で渡せばいいじゃんとか言われるとそれまでなのですが、 機能として有りそうにも拘わらず見つけることが出来なかったため質問した次第です。 >>830 ありがとうございます。調べて試してみます。 >>831 説明が上手くなくて申し訳ないです。
835 名前:デフォルトの名無しさん mailto:sage [2008/12/11(木) 01:48:56 ] >>834 >機能として有りそうにも拘わらず見つけることが出来なかったため質問した次第です。 そんな機能必要ないから存在しないだけだから
836 名前:デフォルトの名無しさん [2008/12/11(木) 01:57:53 ] プログラムに慣れてないとかいう問題ではたぶんなくて 自分がやってることとやりたいことを全部書いてないだけだと思うよ。 >825 > 変数名を文字列に変換する をしてくれるvarnameという関数が仮に存在したとしても あなたの質問の例では意味がない。 func = [1 2 3]; plot(func) title('func') を func = [1 2 3]; plot(func) title(varname(func)) と書けても「手入力」の節約になってない。 plotとtitleの部分を関数にしたいということなら分かるけど。 help inputname
837 名前:デフォルトの名無しさん mailto:sage [2008/12/11(木) 03:15:16 ] そう。だから文字列配列を作って eval で展開するのさ。 funcnames = { 'func1', 'func2', 'func3' }; for i = 1:length(funcs) eval(sprintf('plot(%s)', funcnames{i])); title(funcnames{i]); end >>831 eval 使わないとなるとどうやるんだ?参考までに教えてくれ。
838 名前:デフォルトの名無しさん [2008/12/11(木) 07:16:07 ] なんで>>837 はえらそうなのか。
839 名前:デフォルトの名無しさん [2008/12/11(木) 17:53:58 ] > eval 使わないとなるとどうやるんだ? >>836 に書いてあるんだけど。 evalもいいけどデバッグしにくくなるし よほどの理由がある時以外は使わない方がいいよ。
840 名前:デフォルトの名無しさん mailto:sage [2008/12/12(金) 02:41:03 ] >>839 書いてないよ >varnameという関数が仮に存在したとして