ListSliceContourPlot3D[farr,surf]
曲面 surf についてスライスされた三次元 surf の等高線プロットを生成する.
ListSliceContourPlot3D[{{x1,y1,z1,f1},{x2,y2,z2,f2},…},surf]
点{xi,yi,zi}における fiの値についてのスライス等高線プロットを生成する.
ListSliceContourPlot3D[…,{surf1,surf2,…}]
複数のスライス surf1, surf2, …上でスライス等高線プロットを生成する.
ListSliceContourPlot3D
ListSliceContourPlot3D[farr,surf]
曲面 surf についてスライスされた三次元 surf の等高線プロットを生成する.
ListSliceContourPlot3D[{{x1,y1,z1,f1},{x2,y2,z2,f2},…},surf]
点{xi,yi,zi}における fiの値についてのスライス等高線プロットを生成する.
ListSliceContourPlot3D[…,{surf1,surf2,…}]
複数のスライス surf1, surf2, …上でスライス等高線プロットを生成する.
詳細とオプション
- ListSliceContourPlot3Dは,立体の表面に滑らかな等高線を与える.
- ListSliceContourPlot3Dは,曲面 surf 上に,補間されたされた関数
が一定の値 d1,d2等を持つレベル集合に対応する等曲線を構築する.デフォルトで,値が diから di+1までの領域が簡単に識別できるように曲線間の領域は陰影付される. - 規則的なデータについては,関数
は
で値 farr[[i,j,k]]を持つ. - 不規則データについては,
は
で値 fiを持つ. - 次は,領域
が規則的なデータについてはデカルト積
,不規則データについては{{x1,y1,z1},…,{xn,yn,zn}}の凸包である曲面
を可視化する. - ListSliceContourPlot3D[Tabular[…]cspec]は,列指定 cspec を使って表オブジェクトから値を抽出し,これをプロットする.
- 次は,表データのプロットに使用可能な列指定 cspec の形式である.
-
{colx,coly,colz,colf} 列 f と列 x, y, z をプロットする - 次の基本的なスライス面 surfiを与えることができる.
-
Automatic スライス面を自動的に決定する 
"CenterPlanes" 中心を通る座標平面 
"BackPlanes" プロットの後ろの座標平面 
"XStackedPlanes"
軸に沿って積み重ねられた座標平面
"YStackedPlanes"
軸に沿って積み重ねられた座標平面
"ZStackedPlanes"
軸に沿って積み重ねられた座標平面
"DiagonalStackedPlanes" 対角上に軸に沿って積み重ねられた座標平面 
"CenterSphere" 中心の球 
"CenterCutSphere" 切り取られたウェッジがある球 
"CenterCutBox" 切り取られた象限があるボックス - ListSliceContourPlot3D[data]はListSliceContourPlot3D[data,Automatic]に等しい.
- 基本的なスライス面には次のパラメータ化を使うことができる.
-
{"XStackedPlanes",n}, n 個の等間隔の平面を生成 {"XStackedPlanes",{x1,x2,…}} x=xiについての平面を生成 {"CenterCutSphere",ϕopen} 視点に面したカット角 ϕopen {"CenterCutSphere",ϕopen,ϕcenter}
平面上の中心角が ϕcenterのカット角 ϕopen - "YStackedPlanes"および "ZStackedPlanes"は"XStackedPlanes"についての指定に従う.追加的な特徴はスコープの例で示す.
- 次の一般的なスライス面 surfiを使うことができる.
-
surfaceregion 3Dにおける二次元領域,例:Hyperplane volumeregion surfiが境界面とみなされる3Dにおける三次元領域,例:Cuboid - スライス面 surfiには次のラッパーを使うことができる.
-
Annotation[surf,label] 注釈を与える Button[surf,action] 曲面がクリックされた際に実行する動作を定義 EventHandler[surf,…] 曲面の一般的なイベントハンドラを定義 Hyperlink[surf,uri] 曲面がハイパーリンクとして動作するようにする PopupWindow[surf,cont] 曲面にポップアップウィンドウを付ける StatusArea[surf,label] 曲面上にマウスが来た場合にステータスエリアに表示 Tooltip[surf,label] 曲面に任意のツールチップを付ける - ListSliceContourPlot3Dには,Graphics3Dと同じオプションに以下の追加・変更を加えたものが使える. [全オプションのリスト]
-
Axes True 軸を描くかどうか BoundaryStyle Automatic 表面の境界にどのようにスタイル付けするか BoxRatios {1,1,1} 境界3Dボックスの比 ClippingStyle None PlotRangeで切り取られた値をどのように描画するか ColorFunction Automatic プロットにどのように彩色するか ColorFunctionScaling True ColorFunctionの引数をスケールするかどうか Contours Automatic 各曲面に何本の/どのような等高線を表示するか ContourShading Automatic 等高線間の領域にどのように陰影付けするか ContourStyle Automatic 等高線のスタイル DataRange Automatic データとして仮定する x,y,z の値の範囲 PerformanceGoal $PerformanceGoal パフォーマンスのどの面について最適化するか PlotLegends None 色勾配の凡例 PlotPoints Automatic 各方向のスライス面 surfiの近似サンプル数 PlotRange {Full,Full,Full,Automatic} 含める f あるいは他の値の範囲 PlotTheme $PlotTheme プロットの全体的なテーマ RegionFunction (True&) 点を含めるかどうかの決め方 ScalingFunctions None 個々の座標のスケール方法 TargetUnits Automatic 使用する所望の単位 - デフォルトで,ColorFunctionには f のスケールされた値が渡される.
- デフォルトで,RegionFunctionには x,y,z,f が渡される.
- 次元{r,s,t}の farr について,DataRangeAutomaticという設定はDataRange{{1,r},{1,s},{1,t}}に等しい.
- 次は,ScalingFunctionsの可能な設定である.
-
sf f 等高線の値をスケールする {sx,sy,sz} x,y,z の各軸をスケールする {sx,sy,sz,sf} x,y,z の各軸と f 等高線の値をスケールする - 次は,よく使われるスケーリング関数 s である.
-
"Log" 
自動目盛ラベル付きの対数スケール "Log10" 
10のベキ乗に目盛がある10を底とする対数スケール "SignedLog" 
0と負の数を含む対数に似たスケール "Reverse" 
座標の向きを逆にする
全オプションのリスト
例題
すべて開く すべて閉じる例 (2)
data = Table[Sqrt[x ^ 2 + y ^ 2 + z ^ 2], {z, 0, 3, 0.1}, {y, 0, 3, 0.1}, {x, 0, 3, 0.1}];ListSliceContourPlot3D[data, "CenterPlanes"]data = Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.2}, {y, -2, 2, 0.2}, {x, -2, 2, 0.2}];ListSliceContourPlot3D[data, ImplicitRegion[x ^ 3 + y ^ 2 - z ^ 2 == 0, {x, y, z}], DataRange -> {{-2, 2}, {-2, 2}, {-2, 2}}]スコープ (29)
表面 (9)
data = Table[x + y + z, {z, -1, 1, 0.2}, {y, -1, 1, 0.2}, {x, -1, 1, 0.2}];Table[ListSliceContourPlot3D[data, sl, PlotLabel -> sl], {sl, {"CenterPlanes", "BackPlanes", "ZStackedPlanes"}}]data = Table[Sin[x] + y ^ 2 - z ^ 3, {z, -1, 1, 0.2}, {y, -1, 1, 0.2}, {x, -1, 1, 0.2}];Table[ListSliceContourPlot3D[data, sl, PlotLabel -> sl], {sl, {"XStackedPlanes", "YStackedPlanes", "ZStackedPlanes"}}]data = Table[Sin[x] + y ^ 2 - z ^ 3, {z, -1, 1, 0.2}, {y, -1, 1, 0.2}, {x, -1, 1, 0.2}];Table[ListSliceContourPlot3D[data, sl, PlotLabel -> sl], {sl, {"CenterSphere", "CenterCutSphere", "CenterCutBox"}}]data = Table[x + y + z, {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];ListSliceContourPlot3D[data, HalfPlane[{{0, 0, 0}, {1, 0, 0}}, {0, 1, 1}]]体積プリミティブ上にプロットすることは,RegionBoundary[reg]上にプロットすることに等しい:
data = Table[x + y + z, {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];ListSliceContourPlot3D[data, Cylinder[], DataRange -> {{-1, 1}, {-1, 1}, {-1, 1}}]data = Table[Sin[x y z], {z, -2, 2, 0.2}, {y, -2, 2, 0.2}, {x, -2, 2, 0.2}];ListSliceContourPlot3D[data, ImplicitRegion[x ^ 3 + y ^ 2 - z ^ 2 == 0, {x, y, z}], DataRange -> {{-2, 2}, {-2, 2}, {-2, 2}}]data = Table[Sin[x y z], {z, -2, 2, 0.2}, {y, -2, 2, 0.2}, {x, -2, 2, 0.2}];ListSliceContourPlot3D[data, {Cylinder[], "BackPlanes"}, Contours -> 3, DataRange -> {{-2, 2}, {-2, 2}, {-2, 2}}]data = Table[x + y + z, {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, {"XStackedPlanes", 7}]data = Table[Sin[x y z], {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, {"CenterCutSphere", 2Pi / 3}]データ (8)
個の値からなる規則的なデータについて,
,
,
のデータは配列中のその位置を反映する:
data = Table[Sqrt[x ^ 2 + y ^ 2 + z ^ 2], {z, 0, 3, 0.1}, {y, 0, 3, 0.1}, {x, 0, 3, 0.1}];ListSliceContourPlot3D[data, "CenterPlanes"]DataRangeを使って明示的な
,
,
のデータ範囲を与える:
ListSliceContourPlot3D[data, "CenterPlanes", DataRange -> {{0, 3}, {0, 3}, {0, 3}}](
,
,
,
) のタプルからなる不規則データの補間された等高線をプロットする:
pts = RandomPoint[Cuboid[], 10 ^ 3];
data = Table[Append[p, p[[1]] + p[[2]] + p[[3]]], {p, pts}];ListSliceContourPlot3D[data, "CenterPlanes"]Show[%, Graphics3D[{AbsolutePointSize[2], Red, Point[pts]}]]SparseArrayで与えられた値の配列についての等高線をプロットする:
data = SparseArray@Table[Sqrt[x ^ 2 + y ^ 2 + z ^ 2], {z, 0, 3, 0.1}, {y, 0, 3, 0.1}, {x, 0, 3, 0.1}]ListSliceContourPlot3D[data]QuantityArrayで与えられた値の配列について,密度をプロットする:
data = QuantityArray[Table[x ^ 2 + y ^ 2 + z ^ 2, {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "kg/m^3"];ListSliceContourPlot3D[data, "BackPlanes", AxesLabel -> Automatic, PlotLegends -> Automatic, TargetUnits -> {"Meters", "Meters", "Meters", "g/ft^3"}]Contoursを使って等高線の数を指定する:
data = Table[x + y + z, {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, "BackPlanes", Contours -> 5]ListSliceContourPlot3D[data, "BackPlanes", Contours -> {-1, 0, 1}]PlotPointsを使って表面のサンプリングを制御する:
data = Table[x ^ 2 + y ^ 2 + z ^ 2, {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];Table[ListSliceContourPlot3D[data, "CenterPlanes", PlotLabel -> pp, Axes -> False, Boxed -> False, PlotPoints -> pp], {pp, {3, 6, 9}}]data = Table[Sqrt[x y z], {z, -1, 1, 0.1}, {y, -1, 1, 0.1}, {x, -1, 1, 0.1}];ListSliceContourPlot3D[data, "CenterSphere", DataRange -> {{-1, 1}, {-1, 1}, {-1, 1}}]RegionFunctionを使って曖昧なスライスを露出させる:
data = Table[x ^ 2 + y ^ 2 + z ^ 2, {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, "ZStackedPlanes", RegionFunction -> Function[{x, y, z}, x < 0 || y > 0], DataRange -> {{-2, 2}, {-2, 2}, {-2, 2}}]表形式データ (1)
tabular = Tabular[IconizedObject[«data»], {"f", "x", "y", "z"}]各列が{x,y,z,f}形式のデータを表す表形式データをプロットする:
ListSliceContourPlot3D[tabular -> {"x", "y", "z", "f"}]ListSliceContourPlot3D[tabular -> {"x", "y", "z", "f"}, PlotLegends -> Automatic]プレゼンテーション (11)
PlotThemeを使って即座に全体的なスタイリングを得る:
data = Table[x ^ 2 + y ^ 2 + z ^ 2, {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];Table[ListSliceContourPlot3D[data, "CenterPlanes", PlotLabel -> t, PlotTheme -> t], {t, {"Minimal", "Scientific", "Marketing"}}]PlotLegendsを使ってさまざまな値についての色の棒を得る:
data = Table[x y z, {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];ListSliceContourPlot3D[data, "BackPlanes", PlotLegends -> Automatic]Axesで軸の表示を制御する:
data = Table[x + y + z, {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];Table[ListSliceContourPlot3D[data, "CenterPlanes", PlotLabel -> a, Axes -> a], {a, {True, False, {True, False, True}}}]AxesLabelを使って軸に,PlotLabelを使ってプロット全体にラベルを付ける:
data = Table[x ^ 2 + y ^ 2 + z ^ 2, {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, "CenterPlanes", Ticks -> None, AxesLabel -> {x, y, z}, PlotLabel -> x ^ 2 + y ^ 2 + z ^ 2]ColorFunctionで,データ値によってプロットに彩色する:
data = Table[x y z, {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];Table[ListSliceContourPlot3D[data, "ZStackedPlanes", PlotLabel -> c, ColorFunction -> c], {c, {Hue, "BlueGreenYellow"}}]ContourShadingを使って等高線の間の領域にスタイルを施す:
data = Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];ListSliceContourPlot3D[data, "CenterPlanes", Contours -> 9, BoundaryStyle -> None, ContourShading -> {Orange, None, Blue}]ContourStyleを使って等高線にスタイルを付ける:
data = Table[x ^ 4 + y ^ 4 + z ^ 4 - x ^ 2 - y ^ 2 - z ^ 2, {z, -1, 1, 0.2}, {y, -1, 1, 0.2}, {x, -1, 1, 0.2}];ListSliceContourPlot3D[data, "CenterPlanes", ContourStyle -> Dotted]BoundaryStyleでスライス面の境界にスタイルを付ける:
data = Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}];ListSliceContourPlot3D[data, "CenterPlanes", BoundaryStyle -> Gray]TargetUnitsは,可視化でどの単位を使うかを指定する:
data = QuantityArray[Table[x ^ 2 + y ^ 2 + z ^ 2, {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "kg/m^3"];ListSliceContourPlot3D[data, "BackPlanes", AxesLabel -> Automatic, PlotLegends -> Automatic, TargetUnits -> {"Feet", "Feet", "Feet", "g/ft^3"}]ListSliceContourPlot3D[IconizedObject[«data»], ScalingFunctions -> {"Log", None, None}]ListSliceContourPlot3D[IconizedObject[«data»], ScalingFunctions -> {None, None, "Reverse"}]オプション (68)
Axes (3)
ListSliceContourPlot3D[IconizedObject[«data»], "CenterPlanes"]ListSliceContourPlot3D[IconizedObject[«data»], "CenterPlanes", Axes -> False]{ListSliceContourPlot3D[IconizedObject[«data»], "CenterPlanes", Axes -> {False, False, True}], ListSliceContourPlot3D[IconizedObject[«data»], "CenterPlanes", Axes -> {False, True, False}], ListSliceContourPlot3D[IconizedObject[«data»], "CenterPlanes", Axes -> {True, False, False}]}AxesLabel (3)
ListSliceContourPlot3D[IconizedObject[«data»], "CenterPlanes"]ListSliceContourPlot3D[IconizedObject[«data»], "CenterPlanes", AxesLabel -> z]ListSliceContourPlot3D[IconizedObject[«data»], "CenterPlanes", AxesLabel -> {"width", "depth", "height"}]AxesOrigin (2)
AxesStyle (4)
ListSliceContourPlot3D[IconizedObject[«data»], "CenterPlanes", AxesStyle -> Red]ListSliceContourPlot3D[IconizedObject[«data»], "CenterPlanes", AxesStyle -> {{Thick, Brown}, {Thick, Blue}, {Thick, Green}}]ListSliceContourPlot3D[IconizedObject[«data»], "CenterPlanes", AxesStyle -> Green, TicksStyle -> StandardBlue]ListSliceContourPlot3D[IconizedObject[«data»], "CenterPlanes", AxesStyle -> Green, LabelStyle -> StandardBlue]BoundaryStyle (1)
BoundaryStyleでスライス面の境界にスタイルを付ける:
data = Table[-(x ^ 2 + y ^ 2 + z ^ 2), {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];ListSliceContourPlot3D[data, "CenterPlanes", BoundaryStyle -> Gray]BoxRatios (3)
data = Table[x y z, {z, -1, 2, 0.5}, {y, 0, 1, 0.5}, {x, 0, 1, 0.5}];ListSliceContourPlot3D[data, "CenterSphere"]BoxRatios->Automaticを使って3D座標値の自然なスケールを示す:
data = Table[x y z, {z, -1, 2, 0.5}, {y, 0, 1, 0.5}, {x, 0, 1, 0.5}];ListSliceContourPlot3D[data, "CenterSphere", BoxRatios -> Automatic]data = Table[x y z, {z, -1, 2, 0.5}, {y, 0, 1, 0.5}, {x, 0, 1, 0.5}];ListSliceContourPlot3D[data, "CenterSphere", BoxRatios -> {1, 3, 2}]ClippingStyle (2)
data = Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.2}, {y, -2, 2, 0.2}, {x, -2, 2, 0.2}];ListSliceContourPlot3D[data, "CenterPlanes", PlotRange -> {0.09, 0.72}, ClippingStyle -> {Red, Blue}]Noneを使って切り取られた領域を取り除く:
data = Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.2}, {y, -2, 2, 0.2}, {x, -2, 2, 0.2}];ListSliceContourPlot3D[data, "CenterPlanes", PlotRange -> {0.09, 0.72}, ClippingStyle -> None]ColorFunction (3)
data = Table[x + y + z, {z, -1, 2, 0.5}, {y, 0, 1, 0.5}, {x, 0, 1, 0.5}];ListSliceContourPlot3D[data, "XStackedPlanes", ColorFunction -> Hue]ColorDataから名前付きの色勾配を使う:
data = Table[x ^ 2 + y ^ 2 + z ^ 2, {z, -1, 2, 0.5}, {y, 0, 1, 0.5}, {x, 0, 1, 0.5}];ListSliceContourPlot3D[data, "XStackedPlanes", ColorFunction -> "IslandColors"]data = Table[Sin[2 x y z], {z, -2, 2, 0.1}, {y, -2, 2, 0.1}, {x, -2, 2, 0.1}];ListSliceContourPlot3D[data, "ZStackedPlanes", ColorFunction -> Function[f, If[f < 0, Red, Green]], ColorFunctionScaling -> False, Contours -> 3]ColorFunctionScaling (2)
data = Table[x y z, {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, "BackPlanes", ColorFunction -> Hue]ColorFunctionScaling->Falseを使ってスケールされていない値を得る:
data = Table[Sin[2 x y z], {z, -2, 2, 0.1}, {y, -2, 2, 0.1}, {x, -2, 2, 0.1}];ListSliceContourPlot3D[data, "BackPlanes", ColorFunction -> (If[# < 0, Red, Green]&), ColorFunctionScaling -> False, Contours -> 4, PlotPoints -> 50]Contours (4)
data = Table[x ^ 3 + y ^ 2 - z ^ 2, {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, "BackPlanes", Contours -> Automatic]data = Table[x ^ 3 + y ^ 2 - z ^ 2, {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, "BackPlanes", Contours -> 5]data = Table[x ^ 3 + y ^ 2 - z ^ 2, {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, "BackPlanes", Contours -> {-1, 1}]data = Table[x ^ 3 + y ^ 2 - z ^ 2, {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, "BackPlanes", Contours -> {{-1, Red}, {1, Green}}]ContourStyle (1)
ContourShading (4)
ContourShadingAutomaticはColorFunctionから等高線領域の陰影付けを計算する:
data = Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];ListSliceContourPlot3D[data, "CenterPlanes", Contours -> 9, BoundaryStyle -> None, ContourShading -> Automatic, ColorFunction -> "BrightBands"]data = Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];ListSliceContourPlot3D[data, "CenterPlanes", Contours -> 9, BoundaryStyle -> None, ContourShading -> {Orange, Blue}]data = Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];ListSliceContourPlot3D[data, "CenterPlanes", Contours -> 9, BoundaryStyle -> None, ContourShading -> {Orange, None, Blue}]data = Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];ListSliceContourPlot3D[data, "CenterPlanes", Contours -> 9, BoundaryStyle -> None, ContourShading -> None]DataRange (2)
data = Table[-(x ^ 2 + y ^ 2 + z ^ 2), {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, "XStackedPlanes"]data = Table[-(x ^ 2 + y ^ 2 + z ^ 2), {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, "XStackedPlanes", DataRange -> {{-2, 2}, {-2, 2}, {-2, 2}}]ImageSize (7)
Tiny,Small,Medium,Largeのような名前付きのサイズを使う:
{ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", ImageSize -> Tiny], ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", ImageSize -> Small]}{ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", ImageSize -> 150], ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", AspectRatio -> 1.5, ImageSize -> 150]}{ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", ImageSize -> {Automatic, 150}], ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", AspectRatio -> 2, ImageSize -> {Automatic, 150}]}{ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", ImageSize -> UpTo[200]], ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", AspectRatio -> 2, ImageSize -> UpTo[200]]}グラフィックスの幅と高さを指定して,必要な場合はスペースで充填する:
ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", ImageSize -> {200, 200}, Background -> Lighter@Orange]AspectRatioFullと設定すると,使用可能なスペースが塗り潰される:
ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", AspectRatio -> Full, ImageSize -> {200, 200}, Background -> Lighter@Orange]{ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", ImageSize -> {UpTo[150], UpTo[150]}], ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", AspectRatio -> 2, ImageSize -> {UpTo[150], UpTo[150]}]}ImageSizeFullを使ってオブジェクト内の使用可能なスペースを塗り潰す:
Framed[Pane[ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", ImageSize -> Full, Background -> Lighter@Orange], {200, 200}]]Framed[Pane[ListSliceContourPlot3D[Table[Exp[-(x ^ 2 + y ^ 2 + z ^ 2)], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}], "CenterPlanes", AspectRatio -> Full, ImageSize -> {Scaled[0.5], Scaled[0.5]}, Background -> Lighter@Orange], {200, 200}]]PerformanceGoal (2)
data = Table[-(x ^ 2 + y ^ 2 + z ^ 2), {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}];Timing[ListSliceContourPlot3D[data, "CenterPlanes", PerformanceGoal -> "Quality"]]data = Table[-(x ^ 2 + y ^ 2 + z ^ 2), {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}];Timing[ListSliceContourPlot3D[data, "CenterPlanes", PerformanceGoal -> "Speed"]]PlotLegends (1)
PlotLegendsは,自動的にContoursとContourShadingを選ぶ:
data = Table[Sin[x]Sin[y], {z, -2, 2, 0.5}, {y, -2, 2, 0.5}, {x, -2, 2, 0.5}];ListSliceContourPlot3D[data, "ZStackedPlanes", PlotLegends -> Automatic]PlotPoints (1)
PlotRange (3)
デフォルトですべて(All)の等高線が示される:
data = Table[x y z, {z, -1, 1, .2}, {y, -1, 1, .2}, {x, -1, 1, .2}];ListSliceContourPlot3D[data, "CenterSphere"]data = Table[x y z, {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];ListSliceContourPlot3D[data, "CenterSphere", PlotRange -> {All, All, {0, 2}}, BoxRatios -> Automatic, DataRange -> {{-1, 1}, {-1, 1}, {-1, 1}}]data = Table[x y z, {z, -1, 1}, {y, -1, 1}, {x, -1, 1}];ListSliceContourPlot3D[data, "CenterSphere", PlotRange -> {All, All, All, {0, 1}}, BoxRatios -> Automatic, DataRange -> {{-1, 1}, {-1, 1}, {-1, 1}}]PlotTheme (3)
data = Table[-(x ^ 2 + y ^ 2 + z ^ 2), {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, "CenterPlanes", PlotTheme -> "Detailed"]任意のオプション設定でPlotTheme設定,この場合は面格子,が無効にされる:
data = Table[-(x ^ 2 + y ^ 2 + z ^ 2), {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];ListSliceContourPlot3D[data, "CenterPlanes", PlotTheme -> "Detailed", FaceGrids -> None]data = Table[x ^ 2 + y ^ 2 + z ^ 2, {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];Table[ListSliceContourPlot3D[data, "CenterPlanes", PlotLabel -> t, PlotTheme -> t, ImageSize -> 130], {t, {"Scientific", "Monochrome", "Minimal", "Web", "Working", "Classic", "Business", "Marketing", "Detailed"}}]RegionFunction (1)
ScalingFunctions (6)
ListSliceContourPlot3D[IconizedObject[«data»]]ListSliceContourPlot3D[IconizedObject[«data»], ScalingFunctions -> {"Log", None, None}]ListSliceContourPlot3D[IconizedObject[«data»], ScalingFunctions -> {None, None, "Reverse"}]ListSliceContourPlot3D[IconizedObject[«data»], ScalingFunctions -> {None, None, {-Log[#]&, Exp[-#]&}}]スケーリング関数は変数によって定義されたスライスに適用される:
ListSliceContourPlot3D[IconizedObject[«data»], ImplicitRegion[x + y == 2z, {x, y, z}], ScalingFunctions -> {None, None, "Log"}]境界ボックスと相対的に定義されたスライスの表面はスケーリング関数の影響を受けない:
ListSliceContourPlot3D[IconizedObject[«data»], "CenterCutSphere", ScalingFunctions -> {None, None, "Log"}]TargetUnits (1)
QuantityArrayで指定された単位は,TargetUnitsで指定された単位に変換される:
data = QuantityArray[Table[-(x ^ 2 + y ^ 2 + z ^ 2), {z, -2, 2}, {y, -2, 2}, {x, -2, 2}], "kg/m^3"];ListSliceContourPlot3D[data, "BackPlanes", AxesLabel -> Automatic, PlotLegends -> Automatic, TargetUnits -> {"Meters", "Meters", "Meters", "g/ft^3"}]Ticks (6)
ListSliceContourPlot3D[Table[Sqrt[x ^ 2 + y ^ 2 + z ^ 2], {z, -2, 2, 0.1}, {y, -2, 2, 0.1}, {x, -2, 2, 0.1}], "CenterPlanes"]ListSliceContourPlot3D[Table[Sqrt[x ^ 2 + y ^ 2 + z ^ 2], {z, -2, 2, 0.1}, {y, -2, 2, 0.1}, {x, -2, 2, 0.1}], "CenterPlanes", Ticks -> None]ListSliceContourPlot3D[Table[Sqrt[x ^ 2 + y ^ 2 + z ^ 2], {z, -2, 2, 0.1}, {y, -2, 2, 0.1}, {x, -2, 2, 0.1}], "CenterPlanes", Ticks -> {{5, 15, 25}, {5, 15, 25}, {5, 15, 25}}]ListSliceContourPlot3D[Table[Sqrt[x ^ 2 + y ^ 2 + z ^ 2], {z, -2, 2, 0.1}, {y, -2, 2, 0.1}, {x, -2, 2, 0.1}], "CenterPlanes", Ticks -> {{{5, a}, {15, b}, {25, c}}, {{5, a}, {15, b}, {25, c}}, {{5, a}, {15, b}, {25, c}}}]ListSliceContourPlot3D[Table[Sqrt[x ^ 2 + y ^ 2 + z ^ 2], {z, -2, 2, 0.1}, {y, -2, 2, 0.1}, {x, -2, 2, 0.1}], "CenterPlanes", Ticks -> {{{5, a, .1}, {15, b, .1}, {25, c, .1}}, {{5, a, .05}, {15, b, .05}, {25, c, .05}}, {{5, a, .15}, {15, b, .15}, {25, c, .15}}}]ListSliceContourPlot3D[Table[Sqrt[x ^ 2 + y ^ 2 + z ^ 2], {z, -2, 2, 0.1}, {y, -2, 2, 0.1}, {x, -2, 2, 0.1}], "CenterPlanes", Ticks -> {{{5, a, .1, Directive[Red]}, {15, b, .1, Directive[Red, Thick]}, {25, c, .1, Directive[Red, Dashed, Thick]}}, {{5, a, .1, Directive[Blue]}, {15, b, .1, Directive[Blue, Thick]}, {25, c, .1, Directive[Blue, Dashed, Thick]}}, {{5, a, .1, Directive[Darker@Green]}, {15, b, .1, Directive[Darker@Green, Thick]}, {25, c, .1, Directive[Darker@Green, Dashed, Thick]}}}]TicksStyle (3)
デフォルトで,目盛と目盛ラベルには軸と同じスタイルが使われる:
ListSliceContourPlot3D[Table[Sqrt[x ^ 2 + y ^ 2 + z ^ 2], {z, -2, 2, 0.1}, {y, -2, 2, 0.1}, {x, -2, 2, 0.1}], "CenterPlanes", AxesStyle -> Directive[Bold, Red]]ListSliceContourPlot3D[Table[Sqrt[x ^ 2 + y ^ 2 + z ^ 2], {z, -2, 2, 0.1}, {y, -2, 2, 0.1}, {x, -2, 2, 0.1}], "CenterPlanes", TicksStyle -> Directive[Bold, Red]]ListSliceContourPlot3D[Table[Sqrt[x ^ 2 + y ^ 2 + z ^ 2], {z, -2, 2, 0.1}, {y, -2, 2, 0.1}, {x, -2, 2, 0.1}], "CenterPlanes", TicksStyle -> {Directive[Green, Bold], Directive[Bold, Red], Directive[Bold, Blue]}]アプリケーション (10)
基本データ (4)
data = Table[x, {z, -2, 2}, {y, -2, 2}, {x, -2, 2, 0.25}];ListSliceContourPlot3D[data, "BackPlanes", DataRange -> {{-2, 2}, {-2, 2}, {-2, 2}}]{ListSliceContourPlot3D[Table[y, {z, -2, 2}, {y, -2, 2, 0.25}, {x, -2, 2}], "BackPlanes"],
ListSliceContourPlot3D[Table[z, {z, -2, 2, 0.25}, {y, -2, 2}, {x, -2, 2}], "BackPlanes"]}{ListSliceContourPlot3D[Table[x + y, {z, -2, 2}, {y, -2, 2, 0.25}, {x, -2, 2, 0.25}], "BackPlanes"],
ListSliceContourPlot3D[Table[y + z, {z, -2, 2, 0.25}, {y, -2, 2, 0.25}, {x, -2, 2}], "BackPlanes"]}{ListSliceContourPlot3D[Table[x + y + z, {z, -2, 2, 0.25}, {y, -2, 2, 0.25}, {x, -2, 2, 0.25}], "BackPlanes"],
ListSliceContourPlot3D[Table[x - y + z, {z, -2, 2, 0.2}, {y, -2, 2, 0.2}, {x, -2, 2, 0.2}], "BackPlanes"]}{ListSliceContourPlot3D[Table[x ^ 2 + y ^ 2, {z, -2, 2}, {y, -2, 2, 0.25}, {x, -2, 2, 0.25}], "CenterPlanes", Contours -> 5], ListSliceContourPlot3D[Table[y ^ 2 + z ^ 2, {z, -2, 2, 0.25}, {y, -2, 2, 0.25}, {x, -2, 2}], "CenterPlanes", Contours -> 5]}{ListSliceContourPlot3D[Table[x ^ 2 + y ^ 2 + z ^ 2, {z, -2, 2, 0.2}, {y, -2, 2, 0.2}, {x, -2, 2, 0.2}], "CenterPlanes", Contours -> 5], ListSliceContourPlot3D[Table[x ^ 2 + y ^ 2 + 2z ^ 2, {z, -2, 2, 0.2}, {y, -2, 2, 0.2}, {x, -2, 2, 0.2}], "CenterPlanes", Contours -> 5]}surf = {{"XStackedPlanes", {-0.5, 0.5}}, {"ZStackedPlanes", {-0.5, 0.5}}};ListSliceContourPlot3D[Table[Sin[π x]Sin[π y]Sin[π z], {z, -1, 1, 0.1}, {y, -1, 1, 0.1}, {x, -1, 1, 0.1}], surf, DataRange -> {{-1, 1}, {-1, 1}, {-1, 1}}, Contours -> 5]{ListSliceContourPlot3D[Table[Sin[π x]Sin[π (y + z)], {z, -1, 1, 0.1}, {y, -1, 1, 0.1}, {x, -1, 1, 0.1}], surf, DataRange -> {{-1, 1}, {-1, 1}, {-1, 1}}, Contours -> 5], ListSliceContourPlot3D[Table[Sin[π (x + y)]Sin[π z], {z, -1, 1, 0.1}, {y, -1, 1, 0.1}, {x, -1, 1, 0.1}], surf, DataRange -> {{-1, 1}, {-1, 1}, {-1, 1}}, Contours -> 5]}ListSliceContourPlot3D[Table[Sin[π (x + y + z)], {z, -1, 1, 0.1}, {y, -1, 1, 0.1}, {x, -1, 1, 0.1}], surf, DataRange -> {{-1, 1}, {-1, 1}, {-1, 1}}, Contours -> 5]f = Exp[-Norm[{x, y, z} - {-1, -1, -1}]^2] + Exp[-Norm[{x, y, z} - {1, 1, 1}]^2];ListSliceContourPlot3D[Table[f, {z, -2, 2, 0.2}, {y, -2, 2, 0.2}, {x, -2, 2, 0.2}], {{"XStackedPlanes", {1, -1}}, {"YStackedPlanes", {1, -1}}, {"ZStackedPlanes", {-1, 1}}}, DataRange -> {{-3, 3}, {-3, 3}, {-3, 3}}, BoundaryStyle -> None, Contours -> 5, ContourShading -> Prepend[ColorData[45, "ColorList"], None], PlotRange -> {0, 1}]ボックス内の点
をランダムに選択し,その等高線スライスをプロットする:
f = Sum[Exp[-2Norm[{x, y, z} - pi]^2], {pi, RandomPoint[Cuboid[{-1, -1, -1}, {1, 1, 1}], 10]}];ListSliceContourPlot3D[Table[f, {z, -2, 2, 0.2}, {y, -2, 2, 0.2}, {x, -2, 2, 0.2}], BoundaryStyle -> None, Contours -> 5, ContourShading -> Prepend[ColorData[45, "ColorList"], None], PlotRange -> {0, 4}]シミュレーションデータ (4)
𝒟 = ProductDistribution[{LogNormalDistribution[0, 1], 3}];
f = PDF[𝒟, {x, y, z}]fundata = Table[f, {z, 0, 3, .1}, {y, 0, 3, .1}, {x, 0, 3, .1}];
surf = {"XStackedPlanes", {0.1, 0.5, 1.0, 1.5, 2.0}};ListSliceContourPlot3D[fundata, surf,
DataRange -> {{0, 3}, {0, 3}, {0, 3}},
Contours -> {0.05, 0.1, 0.15, 0.2}, BoundaryStyle -> None, ContourShading -> Prepend[ColorData[45, "ColorList"], None], PlotRange -> {All, All, All, {0, 1}}]分布のシミュレーションを行い,ビン数を計算し,等高線スライスをプロットする:
sampdata = Last@HistogramList[RandomVariate[𝒟, 10 ^ 6], {0, 3, 0.25}, "PDF"];ListSliceContourPlot3D[sampdata, surf, DataRange -> {{0, 3}, {0, 3}, {0, 3}},
Contours -> {0.05, 0.1, 0.15, 0.2}, BoundaryStyle -> None, ContourShading -> Prepend[ColorData[45, "ColorList"], None], PlotRange -> {All, All, All, {0, 1}}]二次元セルオートマトンの進化の等高線スライスをプロットする:
data = CellularAutomaton[{2274, {2, 1}, {1, 1, 1}}, {{{{1}}}, 0}, {50, {{10}}}];ListSliceContourPlot3D[data, {"ZStackedPlanes", 10}, Contours -> {0.5}, BoundaryStyle -> None, ContourShading -> {None, Orange}, ContourStyle -> Gray, PlotRange -> {0, 1}]中心線に沿ったセルが時間とともにどのように進化するかを見ることもできる:
ListSliceContourPlot3D[data, {"YStackedPlanes", {50}}, Contours -> {0.5}, BoundaryStyle -> None, ContourShading -> {None, LightOrange}, ContourStyle -> Gray, PlotRange -> {0, 1}]メンガー(Menger)のスポンジ配列を生成し,そこから等高線スライスをプロットする:
data = Last@SubstitutionSystem[{1 -> 1 - CrossMatrix[{1, 1, 1}], 0 -> ConstantArray[0, {3, 3, 3}]}, {{{1}}}, 3];ListSliceContourPlot3D[data, {"ZStackedPlanes", Range[27]}, Contours -> {0.5}, ContourShading -> {None, Directive[Orange, Opacity[0.2]]}, ContourStyle -> Gray, PlotPoints -> 50]配列中の半径1の近傍の値の平均を取り等高線スライスをプロットすることで,ランダムな値の二次元配列の離散拡散モデルのシミュレーションを行う:
g[d_] := ArrayFilter[Total[#, 2] / 9&, d, 1];時間は
軸に沿って進化する.時点1,5,15のスナップショットを撮る:
simulation = NestList[g, RandomReal[1, {40, 40}], 20];ListSliceContourPlot3D[simulation, {"ZStackedPlanes", {1, 5, 15}}, PlotLegends -> Automatic, AxesLabel -> {None, None, "time"}]経験的データ (2)
タンパク質中の原子の位置をビンに入れ,そこから得られる等高線密度スライスをプロットする:
positions = ProteinData["RAB21", "AtomPositions"];{bins, data} = HistogramList[positions, 10];datarange = MinMax /@ bins;ListSliceContourPlot3D[data, {"ZStackedPlanes", 5}, Contours -> 5, ContourShading -> Prepend[ColorData[45, "ColorList"], None], BoundaryStyle -> None, DataRange -> QuantityMagnitude[datarange], ClippingStyle -> None, PlotRange -> {All, All, All, {0, 80}}]data = ImageData[ExampleData[{"TestImage3D", "MRbrain"}, "Image3D"], DataReversed -> True];ListSliceContourPlot3D[data, Contours -> 5]特性と関係 (5)
表面上の連続密度にListSliceDensityPlot3Dを使う:
data = Table[x ^ 2 + y ^ 2 + z ^ 2, {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];{ListSliceDensityPlot3D[data, "BackPlanes"], ListSliceContourPlot3D[data, "BackPlanes"]}一定値の表面にListContourPlot3Dを使う:
data = Table[x ^ 2 + y ^ 2 + z ^ 2, {z, -2, 2}, {y, -2, 2}, {x, -2, 2}];{ListContourPlot3D[data], ListSliceContourPlot3D[data, "CenterPlanes", Contours -> 3]}データ値の完全体積可視化にListDensityPlot3Dを使う:
data = Table[x y z, {z, -2, 2, 0.2}, {y, -2, 2, 0.2}, {x, -2, 2, 0.2}];{ListDensityPlot3D[data], ListSliceContourPlot3D[data, "BackPlanes"]}関数にSliceContourPlot3Dを使う:
data = Table[Sin[x] + y ^ 2 - z ^ 3, {z, -1, 1, 0.1}, {y, -1, 1, 0.1}, {x, -1, 1, 0.1}];{ListSliceContourPlot3D[data, "BackPlanes"], SliceContourPlot3D[Sin[x] + y ^ 2 - z ^ 3, "BackPlanes", {x, -1, 1}, {y, -1, 1}, {z, -1, 1}]}2Dの等高線プロットにListContourPlotを使う:
data = Table[x ^ 2 + y ^ 2, {z, -1, 1, 0.2}, {y, -1, 1, 0.2}, {x, -1, 1, 0.2}];{ListContourPlot[First[data]], ListSliceContourPlot3D[data, "BackPlanes"]}考えられる問題 (1)
data = Table[x ^ 2 + y ^ 2 + z ^ 2, {z, -1, 1, 0.1}, {y, -1, 1, 0.1}, {x, -1, 1, 0.1}];ListSliceContourPlot3D[data, "CenterSphere"]ContourPlot3D[x ^ 2 + y ^ 2 + z ^ 2 == 1, {z, -1, 1}, {y, -1, 1}, {x, -1, 1}]ListSliceContourPlot3D[data, "CenterPlanes"]テキスト
Wolfram Research (2015), ListSliceContourPlot3D, Wolfram言語関数, https://reference.wolfram.com/language/ref/ListSliceContourPlot3D.html (2025年に更新).
CMS
Wolfram Language. 2015. "ListSliceContourPlot3D." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2025. https://reference.wolfram.com/language/ref/ListSliceContourPlot3D.html.
APA
Wolfram Language. (2015). ListSliceContourPlot3D. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ListSliceContourPlot3D.html
BibTeX
@misc{reference.wolfram_2026_listslicecontourplot3d, author="Wolfram Research", title="{ListSliceContourPlot3D}", year="2025", howpublished="\url{https://reference.wolfram.com/language/ref/ListSliceContourPlot3D.html}", note=[Accessed: 04-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_listslicecontourplot3d, organization={Wolfram Research}, title={ListSliceContourPlot3D}, year={2025}, url={https://reference.wolfram.com/language/ref/ListSliceContourPlot3D.html}, note=[Accessed: 04-November-2026]}