Plot

Plot[f,{x,xmin,xmax}]

xminから xmaxの範囲の x の関数として f のプロットを作成する.

Plot[{f1,f2,},{x,xmin,xmax}]

複数の関数 fi をプロットする.

Plot[{,w[fi],},]

特徴が記号ラッパー w で定義される fiをプロットする.

Plot[,{x}reg]

変数 x が幾何学領域 reg にあるものと解釈する.

詳細とオプション

  • Plotは関数プロットあるいは関数のグラフとしても知られている.
  • Plotはプロットされている領域の x の値のところで f を評価し,点{x,f[x]}を繋いで x に従って f がどのように変化するかを示す曲線を描く.これは,曲線を可視化する.
  • fiが実数あるいはQuantity以外に評価される任意の x のところにはギャップが残される.
  • 極限 xminおよび xmaxは,実数あるいはQuantity式でよい.
  • 領域 reg は1Dの任意のRegionQオブジェクトでよい.
  • Plotは,実質的にBlockを使って変数 x を局所的なものとして扱う.
  • Plotは属性HoldAllを持ち,x に特定の数値を割り当てた後で f を評価する.
  • 場合によっては,x に特定の数値が割り当てられる前にEvaluateを使って f を記号的に評価する方が効率的なこともある.
  • fiには次のラッパー w が使える.
  • Annotation[fi,label]fiについての注釈を与える
    Button[fi,action]fiの曲線がクリックされたときに action を評価する
    Callout[fi,label]コールアウトで関数にラベルを付ける
    Callout[fi,label,pos]コールアウトを相対位置 pos に置く
    EventHandler[fi,events]fiについての一般的なイベントハンドラを定義する
    Highlighted[fi,effect]効果を付けて fiを動的にハイライトする
    Highlighted[fi,Placed[effect,pos]]位置 pos で効果を付けて fiを静的にハイライトする
    Hyperlink[fi,uri]関数をハイパーリンクにする
    Labeled[fi,label]関数にラベルを付ける
    Labeled[fi,label,pos]ラベルを相対位置 pos に置く
    Legended[fi,label]凡例で関数を識別する
    PopupWindow[fi,cont]関数にポップアップウィンドウを付ける
    StatusArea[fi,label]マウスオーバーの際にステータスエリアに表示する
    Style[fi,styles]関数を指定のスタイルで表示する
    Tooltip[fi,label]関数にツールチップを付ける
    Tooltip[fi]関数をツールチップとして使う
  • ラッパー w は複数のレベルで適用することができる.
  • w[fi]fiを囲む
    w[{f1,}]fiの集合を囲む
    w1[w2[]]ネストしたラッパーを使う
  • CalloutLabeledPlacedには次の位置 pos を使うことができる.
  • Above曲線の上の位置
    Below曲線の下の位置
    Before曲線の前の位置
    After曲線の後ろの位置
    Start各曲線の開始位置
    End各曲線の終了位置
    x位置 x における曲線の近く
    Scaled[s]曲線に沿ってスケールされた位置 s
    {s,Above}曲線に沿った位置 s の相対的な位置の上
    {s,Below}曲線に沿った位置 s の相対的な位置の下
    {pos,epos}曲線の相対的な位置 pos に置かれたラベル内の epos
  • Plotには,Graphicsと同じオプションに以下の追加・変更を加えたものが使える. [全オプションのリスト]
  • AspectRatio 1/GoldenRatio縦横比
    Axes True軸を描くかどうか
    ClippingStyle None曲線が切り取られた部分に何を描くか »
    ColorFunction Automatic曲線の彩色の決定方法
    ColorFunctionScaling TrueColorFunctionの引数をスケールするかどうか
    EvaluationMonitor None各関数の評価のときに評価する式
    Exclusions Automaticx 中の除外すべき点
    ExclusionsStyle None除外された点のところに何を描くか
    Filling None各曲線の下の塗潰し
    FillingStyle Automatic塗潰しのスタイル
    LabelingSize Automaticコールアウトとラベルの最大サイズ
    MaxRecursion Automatic許容される再帰分割の最大数
    Mesh None各曲線に何個のメッシュ点を描画するか
    MeshFunctions {#1&}メッシュ点の置き方の決定方法
    MeshShading Noneメッシュ点間の領域の陰影付けの方法
    MeshStyle Automaticメッシュ点のスタイル
    MethodAutomatic曲線を細分化するためのメソッド
    PerformanceGoal $PerformanceGoalパフォーマンスのどの面について最適化するか
    PlotHighlighting Automatic曲線のハイライト効果
    PlotLabel Noneプロットの全体的なラベル
    PlotLabels None曲線に使用するラベル
    PlotLayout Automatic曲線の配置方法
    PlotLegends None曲線の凡例
    PlotPoints Automatic初期のサンプル点の数
    PlotRange {Full,Automatic}y その他の含まれる値の範囲
    PlotRangeClipping Trueプロット範囲で切り取るかどうか
    PlotStyle Automatic各曲線のスタイルを指定するグラフィックス指示子
    PlotTheme $PlotTheme全体的なプロットのテーマ
    RegionFunction (True&)ポイントを含めるかどうかの決定方法
    ScalingFunctions None個々の座標をどのようにスケールするか
    TargetUnitsAutomaticプロット中に表示する単位
    WorkingPrecision MachinePrecision内部計算に使用する精度
  • ClippingStyleの可能な設定
  • Automatic切り取られた部分に点線を使う
    None曲線の切り取られた部分を省略する
    style切り取られた部分に style を使う
  • 次は,複数のプロットパネルのそれぞれに単一の曲線を表示するPlotLayoutの可能な設定である.
  • "Column"パネルの列に別々の曲線を使う
    "Row"パネルの行に別々の曲線を使う
    {"Column",k},{"Row",k}k 列(または行)を使う
    {"Column",UpTo[k]},{"Row",UpTo[k]}最高で k 列(または行)を使う
  • デフォルト設定のExclusions->AutomaticExclusionsStyle->Noneでは,Plotが不連続性や特異点を検知したところで曲線が途切れる.Exclusions->Noneとすると,不連続性や特異点があっても曲線は繋がれる.
  • Exclusions->{x1,x2,}Exclusions->{x==x1,x==x2,}に等しい.
  • HighlightedPlotHighlightingの使用可能なハイライト効果には以下がある.
  • style指定された曲線をハイライトする
    "Ball"曲線上の指定された点をハイライトしてこれにラベルを付ける
    "Dropline"軸までのドロップラインを付けることで曲線上の指定された点をハイライトしてこれにラベルを付ける
    "XSlice"垂直スライスに沿ったすべての点をハイライトしてこれにラベルを付ける
    "YSlice"水平スライスに沿ったすべての点をハイライトしてこれにラベルを付ける
    Placed[effect,pos]指定の位置 pos を静的にハイライトする
  • 位置指定 pos のハイライトには以下がある.
  • x, {x}{x,y}における効果.y は自動的に選択される
    {x,y}{x,y}における効果
    {pos1,pos2,}複数の位置 posi
  • PlotLegends->"Expressions"は凡例テキストとして fiを使う.
  • Plotは,まず,fPlotPointsで指定された等間隔のサンプル点の数で評価する.次に,適応的アルゴリズムを使用し,指定の区間を最大MaxRecursion回まで部分分割して追加のサンプル点を選択する.
  • 有限個のサンプル点を使用した場合には,Plotf の特徴を見逃す可能性があることを認識しておいてほしい.結果を確認する方法として,PlotPointsMaxRecursionを増加する方法がある.
  • 曲線に影響するテーマ
  • "ThinLines"細いプロット線
    "MediumLines"中くらいのプロット線
    "ThickLines"太いプロット線
  • MeshFunctionsおよびRegionFunctionの関数に渡される引数は,x および y である.デフォルトで,ColorFunctionの関数にはこれらの引数のスケールされたバージョンが渡される.
  • 次はScalingFunctionsの可能な設定である.
  • syy 軸をスケールする
    {sx,sy}x 軸と y 軸をスケールする
  • 各スケーリング関数 si"scale"または{g,g-1}のどちらかである.g-1g の逆である.
  • 全オプションのリスト

例題

すべて開くすべて閉じる

  (5)

関数をプロットする:

複数の関数を凡例を付けてプロットする:

各曲線にラベルを付ける:

曲線の下を塗り潰す:

2本の曲線の間を塗り潰す:

自動的に透過色を使って複数の塗り潰された曲線をプロットする:

スコープ  (33)

サンプリング  (10)

関数の変化が速いときにはより多くの点がサンプルとして取られる:

プロット範囲は自動的に選ばれる:

関数が実数ではなくなる部分は除外される:

関数に不連続部分があるときは曲線が分断される:

Exclusions->Noneを使って連結線を描く:

PlotPointsMaxRecursionを使って適応的サンプリングを制御する:

PlotRangeを使って関心領域に焦点を当てる:

領域は別の領域で指定することができる:

MeshRegionを使って領域を指定する:

無限領域上にプロットする:

ScalingFunctionsを使って軸をスケールする:

ラベルと凡例  (11)

Labeledで曲線にラベルを付ける:

曲線と相対的にラベルを置く:

PlotLabelsで曲線にラベルを付ける:

値における曲線の近くにラベルを置く:

スケールされた位置を使う:

点と相対的にテキストの位置を指定する:

Calloutで自動的に曲線にラベルを付ける:

ラベルを特定の位置に置く:

各曲線の凡例を入れる:

Legendedを使って特定の曲線に凡例を付ける:

Placedを使って凡例の位置を変える:

通常,曲線にはマウスオーバーの際に座標を表示するインタラクティブなコールアウトがある:

特定のラッパーあるいはツールチップのようなインタラクションを含めてインタラクティブな機能をオフにする:

複数のインタラクティブなハイライト効果から選択する:

Highlightedを使ってプロット中の特定の点を強調する:

複数の点をハイライトする:

プレゼンテーション  (12)

複数の曲線は自動的に異なる色で描かれる:

異なる曲線に明示的にスタイルを与える:

凡例を含める:

軸と全体的なプロットにラベルを加える:

曲線にラベルを加える:

曲線に沿った位置にラベルを付ける:

各曲線にインタラクティブなTooltipを加える:

塗り潰したプロットを作成する:

プロットテーマを使う:

オーバーレイのメッシュを作る:

メッシュ点間の曲線の線分にスタイルを付ける:

無限領域上に自動目盛を使ってプロットする:

複数の曲線を別々のパネルの行に表示する:

行の代りに列を使う:

複数の行または列を使う:

オプション  (128)

AspectRatio  (1)

実際のプロット値から縦横比を選ぶ:

Axes  (2)

軸は描かない:

軸は描くが 軸は描かない:

AxesLabel  (2)

Plotで指定された変数に基づいたラベルを使う:

各軸についてラベルを指定する:

AxesOrigin  (2)

どこで座標軸が交差するか自動的に決定する:

座標軸の原点を点にする:

AxesStyle  (3)

軸のスタイルを変える:

各軸のスタイルを指定する:

目盛と軸に異なるスタイルを使う:

ラベルと軸に異なるスタイルを使う:

BaselinePosition  (1)

各プロットの 軸でグラフを揃える:

ClippingStyle  (5)

プロットの切り取られた部分を除外する:

切り取られた部分を曲線の他の部分と同じように示す:

切り取られた部分を赤線で示す:

切り取られた部分を下は赤,上は太線で示す:

切り取られた部分を太い赤線で示す:

ColorFunction  (5)

スケールされた 座標と 座標でそれぞれ色付けする:

名前の付いたカラースキームで色付けする:

絶対座標が0より上のときは曲線を赤くする:

曲線に使用した色で塗り潰す:

ColorFunctionは,曲線の色付けに関してはPlotStyle より優先順位が高い:

ColorFunctionScaling  (3)

左側では引数のスケーリングは行わず,右側は自動スケーリングを使う:

絶対 座標が0より上のときは曲線を赤くする:

方向を表すのに色相を,振幅を表すのに明度を用いる:

Epilog  (2)

以下は,結果のグラフィックスにグラフィックスオブジェクトを挿入する:

点が曲線に属するのかどうかを示すための特別のマーカーを挿入する:

EvaluationMonitor  (3)

Plotによって見本として抽出された値のリストを求める:

PlotSin[x]をどこで評価するのかを示す:

関数が何回評価されるか数える:

Exclusions  (7)

これは,除外するものの計算に自動的な方法,この場合は区分関数を使っている:

この場合,除外箇所は不連続な分枝切断線から来ている:

除外部分は計算しないように指示する:

一定の点の集合を除外する:

除外の集合を方程式として与える:

この場合は除外の集合を2つ与える:

方程式と自動的に選ばれた点を除外する:

ExclusionsStyle  (2)

破線を使って垂直方向の漸近線を示す:

黒い点を使って除外箇所をハイライトする:

Filling  (7)

記号的な値または明示的な値を使う:

デフォルトで,塗り潰しが重なる場合は不透明度が使われる:

曲線1と 軸の間を塗り潰す:

曲線1と曲線2の間を塗り潰す:

曲線1と曲線2の間を特定のスタイルで塗り潰す:

曲線1と の間を黄色で塗り潰す:

曲線1と2の間を塗り潰す.1が2の下のときは黄色,1が2の上のときは緑を使う:

FillingStyle  (4)

異なる色で塗り潰す:

不透明度0.5のオレンジ色で塗り潰す:

軸の下を赤で,上を青で塗り潰す:

ColorFunctionから入手した変数の塗り潰しスタイルを使う:

ImageSize  (6)

TinySmallMediumLargeのような名前付きのサイズを使う:

プロットの幅を指定する:

プロットの高さを指定する:

幅と高さが特定のサイズまでになるようにする:

グラフィックスの幅と高さを指定し,必要な場合はスペースで充填する:

AspectRatioFullとすると使用可能なスペースが埋められる:

ImageSizeFullを使ってオブジェクト内の使用可能なスペースを塗り潰す:

画像サイズを使用可能なスペースとの割合で指定する:

LabelingSize  (3)

テキストラベルは実際の大きさで表示される:

画像ラベルは自動的にサイズ調整される:

テキストラベルの最大サイズを指定する:

画像ラベルの最大サイズを指定する:

MaxRecursion  (2)

デフォルトのメッシュサンプル:

MaxRecursionの各レベルが最初のメッシュをより細かいメッシュに分割する:

Mesh  (3)

最初と最後のサンプルメッシュを示す:

等間隔で 方向に20のメッシュレベルを使用する:

方向のメッシュに値の明示的なリストを使う:

MeshFunctions  (2)

方向に等間隔のメッシュを使う:

方向に赤で5つのメッシュレベルを, 方向に青で10のメッシュレベルを示す:

MeshShading  (6)

方向に等幅の赤と青の線分を交互に使う:

Noneを使って線分を消去する:

MeshShadingPlotStyleとともに使うことができる:

曲線のスタイルに関しては,MeshShadingPlotStyleよりも優先順位が高い:

MeshShadingAutomaticにして線分にPlotStyleを使う:

MeshShadingColorFunctionとともに使うことができる:

MeshStyle  (4)

メッシュをプロットと同じ色にする:

方向に赤いメッシュを使う:

方向に赤いメッシュ, 方向に青いメッシュを使う:

方向に大きく赤いメッシュ点を使う:

PerformanceGoal  (2)

より高品質のプロットを生成する:

品質を犠牲にしてもパフォーマンスを向上させる:

PlotHighlighting  (9)

プロットには,デフォルト設定がPlotHighlightingAutomaticのインタラクティブな座標コールアウトが付いている:

PlotHighlightingNoneを使ってプロット全体のハイライト効果をオフにする:

Highlighted[,None]を使って単一の曲線のハイライト効果をオフにする:

任意のグラフィックス指示子を使い,マウスオーバーして曲線をハイライトする:

曲線にマウスオーバーし,点とラベルでハイライトする:

点とラベルを使って曲線上の特定の点をハイライトする:

曲線にマウスオーバーしてラベルと軸へのドロップラインでハイライトする:

点とラベルを使って曲線上の特定の点をハイライトする:

プロットにマウスオーバーして の位置に対応する の値を示すスライスでハイライトする:

固定された の値のところで曲線をハイライトする:

プロットにマウスオーバーして の位置に対応する の値を示すスライスでハイライトする:

固定された の値のところで曲線をハイライトする:

マウスカーソルの の位置に最も近い曲線上の点を示す成分を使う:

点のスタイルを指定する:

マウスカーソルに最も近い曲線の座標を示す成分を使う:

Calloutオプションを使ってラベルの外観を変える:

成分を組み合わせてカスタム効果を作成する:

PlotLabel  (1)

プロットに全体的なラベルを加える:

PlotLabels  (5)

曲線にラベルを付けるためのテキストを指定する:

曲線の上にラベルを置く:

各曲線に別々にラベルを置く:

PlotLabels->"Expressions"は関数を曲線のラベルとして使う:

コールアウトを使って曲線を特定する:

Noneを使ってラベルを付けないようにする:

PlotLayout  (2)

共有軸を使って各曲線を別々のパネルに置く:

列の代りに行を使う:

複数の列または行を使う:

完全な列または行を優先する:

PlotLegends  (7)

デフォルトでは凡例は使われない:

関数に基づいた凡例を作る:

プレースホルダのテキストのある凡例を作る:

特定のラベルのある凡例を作る:

PlotLegendsは自動的にPlotStyleの値を拾う:

Placedを使って凡例の置き方を決める:

凡例を内側に置く:

LineLegendを使って凡例の外観を変える:

PlotPoints  (1)

より滑らかな曲線を得るために初期点を多くする:

PlotRange  (3)

領域全体で曲線を示す:

実数値の部分だけ曲線を示す:

領域全体で から までの範囲の曲線を示す:

PlotRangeClipping  (2)

枠内の領域に曲線が収まるように制限する:

描画領域全体を使って曲線を描く:

PlotStyle  (6)

異なるスタイル指示子を使う:

デフォルトで,複数の曲線には異なるスタイルが選ばれる:

各曲線に別々のスタイルを明示的に指定する:

PlotStyleColorFunctionと組み合せることができる:

PlotStyleMeshShadingと組み合せることができる:

MeshStyleは,デフォルトで,PlotStyleと同じスタイルを使う:

PlotTheme  (2)

単純な目盛,格子線,明るいカラースキームというテーマを使う:

カラースキームを変える:

RegionFunction  (2)

のところの曲線を示す:

の領域を除外する:

ScalingFunctions  (9)

デフォルトで,プロットは各方向に線形スケールである:

方向に対数スケールを使う:

方向に小さい数を上に置く線形スケールを使う:

方向に逆数スケールを使う:

方向と 方向に別々のスケールを使う:

軸は変えずに 軸を逆にする:

関数とその逆関数で定義されるスケールを使う:

TicksGridLinesの位置は自動的にスケールされる:

PlotRangeAxesOriginは自動的にスケールされる:

WorkingPrecision  (2)

機械精度演算で関数を評価する:

任意精度の演算で関数を評価する:

アプリケーション  (19)

基本的なアプリケーション  (3)

いくつかの関数を比較する:

の場合,関数はその逆関数の鏡映である:

区間内で-Abs[x]x Sin[1/x]Abs[x]であることを示す:

離散関数の特性のハイライト  (8)

曲線は関数の特異値の箇所で分割される:

ExclusionsStyleを指定して特異値を強調する:

ExclusionsStyleを使って関数 における不連続性をハイライトする:

不連続性は自動的に導出されるが,指定することもできる:

関数 の零点をハイライトする:

MeshFunctionsに渡される第2引数は である:

MeshFunctionsを使って関数 の極値をハイライトする:

極値は で与えられる:

関数 の極大値と極小値をハイライトする:

極大値はかつの点である:

同様に,極小値はかつで与えられる:

関数 の,非負の部分と非正の部分をハイライトする:

Filling指定を使うと上記が容易に達成できる:

関数 が増加または減少している部分をハイライトする:

関数はのときに増加している:

関数はのときに減少している:

2つを一緒に示し,凡例を加える:

関数 が凸状または凹状になる部分をハイライトする:

関数はのときに凸状になる:

関数はのときに凹状になる:

凡例を付けて2つを一緒に示す:

連続関数の特性のハイライト  (1)

色を使って関数の導関数 についての曲線に重ねる:

0から1の間になるように導関数を再スケールすると,簡単に色にマップできる:

ColorDataからさまざまなカラースケールが得られる:

ColorFunctionを使って曲線の上に色として導関数が重ねられた:

Fillingを使うと色がさらに強調される:

関数のエピグラフとハイポグラフ  (2)

関数 のエピグラフはで与えられる.Fillingを使ってこれを可視化することができる:

関数 のハイポグラフはで与えられる.Fillingを使ってこれを可視化することができる:

複素数値の関数  (3)

実変数の複素数値関数の実部と虚部をプロットする:

実変数の複素数値関数の大きさと位相をプロットする:

関数の位相に基づいて大きさと色をプロットする:

軸まで塗り潰し,位相の別の軸を与える色の凡例を加える:

方程式の解法  (2)

微分方程式の一般解:

2つの特殊解をプロットする:

解の族をプロットする:

代数方程式の一般解:

解の族をプロットする:

特性と関係  (9)

Plotは必要であればより多くの点を使う:

Plotは曲線におけるParametricPlotの特殊ケースである:

パラメトリック曲線と領域にParametricPlotを使う:

陰的な曲線と領域にContourPlotRegionPlotを使う:

対数プロットにLogPlotLogLinearPlotLogLogPlotを使う:

データにListPlotListLinePlotを使う:

AbsArgPlotは,Plotの特殊ケースである:

ReImPlotPlotの特殊ケースである:

関数とパラメータ的な曲面にPlot3DParametricPlot3Dを使う:

おもしろい例題  (1)

ポテンシャル井戸内の固有関数:

Wolfram Research (1988), Plot, Wolfram言語関数, https://reference.wolfram.com/language/ref/Plot.html (2023年に更新).

テキスト

Wolfram Research (1988), Plot, Wolfram言語関数, https://reference.wolfram.com/language/ref/Plot.html (2023年に更新).

CMS

Wolfram Language. 1988. "Plot." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2023. https://reference.wolfram.com/language/ref/Plot.html.

APA

Wolfram Language. (1988). Plot. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Plot.html

BibTeX

@misc{reference.wolfram_2024_plot, author="Wolfram Research", title="{Plot}", year="2023", howpublished="\url{https://reference.wolfram.com/language/ref/Plot.html}", note=[Accessed: 21-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_plot, organization={Wolfram Research}, title={Plot}, year={2023}, url={https://reference.wolfram.com/language/ref/Plot.html}, note=[Accessed: 21-November-2024 ]}