Plotly Isosurfaceを使った等値面プロット#
※記事内に商品プロモーションを含むことがあります。
公開日
Pythonのインタラクティブなグラフを描画できるライブラリPlotlyにて、Isosurface
を使った等値面プロットを描画する方法を解説します。
等値面プロットは、3次元空間におけるスカラー値を描画するものです。 3次元空間における気温をプロットするイメージです。
Plotlyには、高水準のAPIであるPlotly Expressと呼ばれるものもありますが、
この記事では細かい調節ができるgraph_objects
を対象としています。
リンク
Isosurfaceの基礎#
go.Isosurface
を使った等値面プロットの簡単な例を示します。
go.Isosurface()
のx
, y
, z
に座標を、value
に3次元空間における値を指定します。
import plotly.graph_objects as go
x = [0, 0, 0, 0, 1, 1, 1, 1]
y = [0, 0, 1, 1, 0, 0, 1, 1]
z = [0, 1, 0, 1, 0, 1, 0, 1]
values = [0, 0, 1, 1, 2, 2, 3, 3]
fig = go.Figure(
data=go.Isosurface(x=x, y=y, z=z, value=values)
)
fig.show()