ParametricPlot3D
ParametricPlot3D[{fx,fy,fz},{u,umin,umax}]
uminから umaxの範囲の変数 u によってパラメータ付けされている3D空間の曲線を作成する.
ParametricPlot3D[{fx,fy,fz},{u,umin,umax},{v,vmin,vmax}]
u と v でパラメータ付けされている3Dの表面を作成する.
ParametricPlot3D[{{fx,fy,fz},{gx,gy,gz},…},…]
複数のオブジェクトを一緒にプロットする.
ParametricPlot3D[…,{u,v}∈reg]
パラメータ{u,v}が,幾何学領域 reg にあるものと解釈する.
詳細とオプション
- ParametricPlot3Dは,1D領域でプロットする際はパラメトリック曲線,2D領域でプロットする場合はパラメトリック曲面としても知られている.経路に沿って直線を掃くことで曲面が作られた場合,その曲面は線織面と呼ばれる.
- {fx,fy,fz}は1つのパラメータ u の異なる値について評価され,{fx[u],fy[u],fz[u]}の形の曲線を生成する.これは,曲線を可視化する.
- {fx,fy,fz}はパラメータが2つの場合はパラメータ u と v の異なる値について評価され,点{fx[u,v],fy[u,v],fz[u,v]}から曲面を生成する.これは,曲面を可視化する.
- 曲線と曲面は交差したり重なり合ったりするかもしれない.
- fiを評価すると実数以外になる任意の点にはギャップが残される.
- 限界の umin,umax,vmin,vmaxは実数またはQuantity式でよい.
- 領域 reg は1Dまたは2Dの任意のRegionQオブジェクトでよい.
- ParametricPlot3Dは,Blockを使って変数 u と変数 v を局所的なものとして扱う.
- ParametricPlot3Dは属性HoldAllを持ち,変数に特定の数値を割り当てた後でのみ , , …を評価する.
- 場合によっては,変数に特定の数値が割り当てられる前にEvaluateを使って , , …を記号的に評価する方が効率的なこともある.
- {fx,fy,fz}には,次のラッパー w を使うことができる.
-
Annotation[{fx,fy,fz},label] {fx,fy,fz}の注釈を与える Button[{fx,fy,fz},action] {fx,fy,fz}の曲面がクリックされたときに action を評価する Callout[{fx,fy,fz},label] 関数にコールアウトでラベルを付ける Callout[{fx,fy,fz},label,pos] コールアウトを相対的な位置pos に置く EventHandler[{fx,fy,fz},events] {fx,fy,fz}の一般的なイベントハンドラを定義する Hyperlink[{fx,fy,fz},uri] 関数をハイパーリンクにする Labeled[{fx,fy,fz},label] 関数にラベルを付ける Labeled[{fx,fy,fz},label,pos] ラベルを相対的な位置 pos に置く Legended[{fx,fy,fz},label] 関数を凡例で識別する PopupWindow[{fx,fy,fz},cont] 関数にポップアップウィンドウを付ける StatusArea[{fx,fy,fz},label] マウスオーバーの際にステータスエリアに表示する Style[{fx,fy,fz},styles] 関数を指定のスタイルで表示する Tooltip[{fx,fy,fz},label] 関数にツールチップを付ける Tooltip[{fx,fy,fz}] 関数をツールチップとして使う - ラッパー w は複数のレベルで適用できる.
-
w[{fx,fy,fz}] {fx,fy,fz}をラップする w[{{fx,fy,fz},{gx,gy,gz},…}] 曲線の集合をラップする w1[w2[…]] ネストしたラッパーを使う - Callout,Labeled,Placedは次の位置 pos を使うことができる.
-
Automatic 自動的に置かれたラベル Above, Below, Before, After 曲面の周囲の位置 u パラメータ u における曲面の近く {x,y,z} {x,y,z}の近くの位置 Scaled[s] 曲面に沿った,スケールされた位置 s {s,Above},{s,Below},… 曲線に沿った位置 s における相対的な位置 {pos,epos} 曲線の相対的な位置 pos に置かれたラベル内の epos - ParametricPlot3Dは,Graphics3Dと同じオプションに以下の追加・修正を加えたものが使える. [全オプションのリスト]
- 次は,PlotLegendsのよく使われる設定である.
-
None 凡例は使わない Automatic 自動的に決定された凡例 "Expressions" f1, f2, … を凡例のラベルとして使う {lbl1,lbl2,…} lbl1, lbl2, … を凡例のラベルとして使う Placed[lspec,…] 凡例の置き方を指定する - のような関数はすべて,評価されるパラメータの全値に対して実数を与えなければならない.等が実数を与えない場所では結果の曲面に穴があいてしまう.
- デフォルト設定のPlotPoints->Automaticは,曲線ではPlotPoints->75に,曲面ではPlotPoints->{15,15}に当たる.
- ParametricPlot3Dはまず,PlotPointsで指定された多くの等間隔のサンプル点で各関数を評価する.次に適応的アルゴリズムを用いて,追加的なサンプル点を得るために各パラメータで最高MaxRecursion回まで再分割する.
- ParametricPlot3Dは有限個のサンプル点しか使わないことで,関数の特徴を見付けられない可能性もあるので注意されたい.結果の検証にはPlotPointsとMaxRecursionの設定値を大きくしてみるとよい.
- On[ParametricPlot3D::accbend]とすると,曲線が一定の滑らかさに達しなかった場合にParametricPlot3Dがメッセージを出すようになる.
- デフォルト設定のMesh->Automaticは,曲線ではNoneに,曲面では15に当たる.
- デフォルト設定のMeshFunctions->Automaticは,曲線では{#4&}に,曲面では{#4&,#5&}に当たる.
- MeshFunctionsおよびRegionFunctionの関数に渡される引数は x,y,z,u,v である.ColorFunctionとTextureCoordinateFunctionの関数には,デフォルトで,これらの引数のスケールされたバージョンが与えられる.
- 関数は各曲線に沿ってすべて,あるいは各曲面全体で評価される.
- 次は,ScalingFunctionsの可能な設定である.
-
{sx,sy,sz} x,y,z の各軸をスケールする {sx,sy,sz,su} u パラメータ空間をスケールする {sx,sy,sz,su,sv} u パラメータ空間と v パラメータ空間をスケールする - 次は,ScalingFunctionsの可能な設定である.
-
{sx,sy,sz} x,y,z の各軸をスケールする - 次は,よく使われる組込みのスケーリング関数 s である.
-
"Log" 自動目盛ラベル付きの対数スケール "Log10" 10のベキ乗に目盛が付いた,10を底とする対数スケール "SignedLog" 0と負の数を含む対数に似たスケール "Reverse" 座標の向きを逆にする - u パラメータ空間あるいは v パラメータ空間のスケーリングはプロットからのサンプルの取り方に影響するが,プロットの全体的な外観には影響しない.
- ParametricPlot3DはGraphics3D[GraphicsComplex[data]]を返す.
- 3D曲面に影響するテーマ
-
"DarkMesh" 色の濃いメッシュライン "GrayMesh" グレーのメッシュライン "LightMesh" 色の薄いメッシュライン "ZMesh" 垂直に配置されたメッシュライン "ThickSurface" 曲面に厚みを与える
全オプションのリスト
例題
すべて開くすべて閉じるスコープ (33)
サンプリング (9)
関数が急激に変化するところでより多くの点がサンプルとして取られている:
PlotPointsとMaxRecursionを使って適応的サンプリングを制御する:
PlotRangeを使って関心領域に焦点を当てる:
Exclusionsを使って結果の曲面を分割する:
パラメータの領域はMeshRegionで指定することができる:
ラベル付けと凡例 (10)
Calloutを使って式をラベルとして加える:
PlotLabelsを使って曲面にラベルを付ける:
PlotLabelsで曲線にラベルを付ける:
Legendedを使って特定の曲線に凡例を与える:
Placedを使って凡例の場所を変える:
プレゼンテーション (14)
Opacityを使って内部構造を示し,Specularityを使って奥行き表現を加える:
各曲線または領域にインタラクティブなTooltipを与える:
ScalingFunctionsを使って z 軸を逆向きにするようにスケールする:
オプション (87)
BoundaryStyle (4)
曲面がRegionFunctionで切り取られたところに境界線が描かれる:
曲面がExclusionsで切り取られた部分には境界線が描かれない:
ColorFunction (5)
スケールされた , , , あるいは の値で曲面を色付けする:
ColorFunctionはPlotStyleよりも優先順位が高い:
EvaluationMonitor (3)
Exclusions (6)
Mesh (5)
MeshFunctions (3)
MeshShading (9)
Noneを使って線分を除去する:
MeshShadingはPlotStyleとともに使うことができる:
MeshShadingはスタイリングに関してPlotStyleよりも優先順位が高い:
MeshShadingをAutomaticにしてPlotStyleを線分に使う:
MeshShadingはColorFunctionとともに使うことができる:
FaceFormを使って曲面の側面に異なるスタイルを使う:
NormalsFunction (3)
PlotLabels (6)
PlotLegends (3)
PlotStyle (4)
ScalingFunctions (6)
ScalingFunctionsを使って の座標方向を逆にする:
TextureCoordinateFunction (4)
アプリケーション (7)
特性と関係 (6)
Plot3Dは曲面についてのParametricPlot3Dの特殊ケースである:
円柱座標と球座標にRevolutionPlot3DとSphericalPlot3Dを使う:
二次元の曲線と領域にParametricPlotを使う:
陰的に定義された曲面と領域にContourPlot3DとRegionPlot3Dを使う:
データにListPlot3DとListSurfacePlot3Dを使う:
ListLinePlot3Dを使って点のリストを通る曲線をプロットする:
考えられる問題 (3)
閉じた曲面にBoundaryStyleとMeshStyleを一緒に使う:
自動的なPlotRangeはパラメータ化に依存する:
テキスト
Wolfram Research (1991), ParametricPlot3D, Wolfram言語関数, https://reference.wolfram.com/language/ref/ParametricPlot3D.html (2022年に更新).
CMS
Wolfram Language. 1991. "ParametricPlot3D." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/ParametricPlot3D.html.
APA
Wolfram Language. (1991). ParametricPlot3D. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ParametricPlot3D.html