mathematicaの関数名をグラフに表示する方法

このQ&Aのポイント
  • mathematicaのビギナーの方が、複数の関数を一つのグラフに表示し、各関数の名前をグラフ上に表示する方法について教えてください。
  • ビギナーの方がmathematicaで定義した複数の関数を一つのグラフに表示したい場合、Showコマンドを使うことができますが、関数の名前を表示する方法がわかりません。どのようにすれば関数の名前をグラフに表示できるでしょうか。
  • mathematicaのビギナーです。複数の関数を一つのグラフに表示したいと思っていますが、関数の名前を表示する方法がわかりません。どなたか教えていただけないでしょうか?
回答を見る
  • ベストアンサー

mathematica

mathematicaのビギナーです。 f[x_,a_]:=a*Sin[x]; a10=Plot[f[u,10],{u,0,3}]; a20=Plot[f[u,20],{u,0,3}]; のように定義して、これらの関数をShowコマンドで Show[a10,a20] のように、一つのグラフで二つの関数を描いたときに、これらの関数の名前を図中にそれぞれ表示させたいです。いろいろ探したところ、optionでPlotLabelというのがあり、 a10=Plot[f[u,10],{u,0,3},PlotLavel->"a10"]; a20=Plot[f[u,20],{u,0,3},PlotLavel->"a20"]; として Show[a10,a20] とやってみたのですが、関数の名前は同時に表示されませんでした。 ご存知の方教えていただけないでしょうか?よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

No1です すみません一部抜けているので訂正。 << Graphics`Legend` f[x_, a_] := a*Sin[x]; a10 = f[u, 10]; a20 = f[u, 20]; Plot[{a10, a20}, {u, 0, 3}, PlotStyle -> {GrayLevel[0], Dashing[{.03}]}, PlotLegend -> {"a10", "a20"}]

conv2006
質問者

お礼

なるほど、Legendというパッケージを使うんですね。ありがとうございました。helpでPlotLegendを検索したところ、いろいろ細かい設定もできそうですね。 本当にありがとうございました!

その他の回答 (1)

回答No.1

<< Graphics`Legend` Plot[{a10, a20}, {u, 0, 3}, PlotStyle -> {GrayLevel[0], Dashing[{.03}]}, PlotLegend -> {"a10", "a20"}]

関連するQ&A

  • mathematicaでグラフの名前の付け方

    mathematicaで、ある関数f(x,a)をプロットするとします。 f(x,1)とf(x,2)のグラフを同時に描画することはできるのですが、 それぞれの関数に名前を付け、グラフ中に表示させることはできますか? 例えば、f(x,1)はa=1,f(x,2)はa=2と表示させたいです。 出来れば、それぞれの曲線は異なる色で出力されるので、赤の曲線:a=1、青の曲線:a=2 とグラフの右上あたりに表示させたいです。 よろしくお願いします。

  • Mathematicaで条件を変えてプロット

    Mathematicaで y(x) = ax + b といった式をaとbの条件を変えて同じグラフにプロットするにはどうしたらいいのでしょうか? 例えば、a=1 b=2、a=2 b=3についてそれぞれプロットするには y1(x) = x + 2 y2(x) = 2x + 3 とそれぞれ定義して同じグラフにプロットすることは出来るのですが、 条件が多い場合、また式が煩雑な場合となると大変になるので 簡単にする方法があれば教えていただきたいです。

  • Mathematicaでグラフの非表示をするには?

    Mathematicaでグラフを複数作成し(Plot,ListPlot,…),それらを最後にShowでひとつのグラフ上に表示させたいのですが,そのときにひとつひとつのグラフも表示されてしまうのを何とかしたいのですが,何か方法はありますか?

  • mathematica 2変数関数

    mathematicaで2変数関数f(x,y)を定義し、PLot3Dで表示したいのですが x=y=0の時のみf(x,y)=0 x=y=0以外はf(x,y)=g(x,y) (g(x,y)は全領域で予め定義されている) f[x_,y_]:=0;/x=y=0 f[x_,y_]:=g(x,y);/x=y!=0 Plot3D[f[x,y],・・・] とするとエラーがでてしまいますどうしたらいいでしょうか

  • Mathematicaについて

    Mathematicaについての質問です。 授業でMathematicaを使ったものやプログラミングなどの演習を行っているのですが Mathematicaの方の課題の一部がいまいちわからずに困っています。 添付画像は単一パルス波形の図です。 以下が設問になります。 (1)A=1,|B|=π/2で図のパルス波形を-4≦t≦4の範囲で示しなさい。 ただし単位ステップ関数[=u(t)]を用いること。 (2)A=1,|B|=π/4,π/2,πとして各フーリエ変換F(ω)を求め、各グラフ(0≦ω≦10の範囲)を表示しなさい。 (3)A=3,|B|=π/2,πの条件でフーリエ変換F(ω)を求め、各グラフ(0≦ω≦10の範囲)を表示しなさい。 当然のことながらMathematicaのサイトや資料等を参考にコードを打ち込んでいるのですが おそらく間違っているため表示されず困っています。 Mathematicaにお詳しい方、お手数ですがコードでご回答していただけると助かります。 もともとパソコン関係は得意ではないうえに もう3週間程手詰まり状態なのでお助けください。お願い致します。

  • Mathematicaのプログラム

    Mathematicaの以下のプログラムでエラーがでてしまうのですが どこが間違っているのか教えてほしいです f[x_]:=x g[x_,y_]:=Integrate[f[x+y],x] Plot3D[g[x,y],{x,-3,3},{y,-3,3},PlotPoints->200] やりたいことはf(x)=xとしてf(x+y)をxで不定積分しその結果を変数x,yの2変数関数g(x,y)としてPlot3Dで表示したいのですが

  • Mathematica で2元4次連立方程式を解くには・・・

    教えて下さい! 2元4次連立方程式{f(x,y)=0, g(x,y)=0} (関数fとgはxとyの4次方程式です。)について、 例えば、[x,-10,10]のような限定された範囲で 実数解(x,y)を Mathematicaを使って、30桁精度で数値的に求め、 それをx,yの2次元プロットしたいと思っております。 Mathematica のどのような関数を組み合わせれば これができるか、ご教示下さいませんでしょうか? よろしくお願いいたします。 (自分でC言語でプログラムした場合、解けるには解け るのですが、有効数字の桁数が十分でなく、部分的に 数値が丸まってしまい、プロットがとぎれてしまう問題 があったので、有効数字を自在に調節できるMathematica でやってみようと思ったのですが、例えば、安直に Plot[N[Solve[{f == 0, g == 0}], 30], {x, -10, 10, 0.01}] としてもダメでした。NRootなども検討しましたがうまく 行きません。)

  • Mathematicaにおける関数定義と部分積分

    Mathematicaにおける関数定義と部分積分 u[t_,x_]:=u[t,x] のように定義し、 u[t,x]に0を代入した場合、 u[t,l]の計算結果が0になってほしいのですが、 u[t,l]となってしまいます。 /.u[t,x]->0 とした場合に、u[t,x]の項だけでなく、u[t,l]の項も0になってほしいのです。 どのようにすれば、所望の動作をさせることができますか? また、Integrate[f[x]*g[x],{x,0,l}]で部分積分を実行したいのですが、 Mathematicaはやってくれません。 関数形のまま扱い、任意の回数部分積分を実行したいのです。 やはり、自分で関数を作るしなかないのでしょうか? 何かヒントがあれば、教えていただければ幸いです。 よろしくお願いいたします。

  • Mathematicaに関する質問

    私は最近Mathematicaを使い始めました。一人で勉強するのに結構大変です。 さて、質問です。 f[x_] := Exp[-(0.713(x + 0.380) + Sin[2π( x - 0.184)])] の式を定義し場合、f[2]すると、答えは0.457628が出ます。 しかし、逆にf[x_]=0.457628にした場合、x値が2になるような計算をしたい場合はどうすればいいんですか? よろしくお願いいたします。

  • mathematica

    mathematicaで以下のような計算をしたいと思っています。 目標:y=f(x)がありy=1のときのxの値が知りたい そこで自分は逆関数を求めてからその式に1を代入して求めようと考えたのですがmathematicaで逆関数を求めるのはどのようにすればよいのでしょうか? もうひとつの解法としてシンプルに1=f(x)を解こうと試みてsolveを使ったのですが自分が今使おうとしているf(x)は中に積分が入っていたりと複雑なせいか、solveでは解けないと返ってきました。 上記のどちらでも構わないのでmathematicaで目標を求めるにはどのようにすればいいのでしょうか。よろしくお願い致します。