matplotlib でいくつかの曲線をプロットしようとしています。
しかし、これらの曲線はビューポートから互いに重なり合っているためです。
したがって、ここでは z オーダーだけでは役に立ちません。
matplotlib に深度バッファのような機能があるのだろうか。
私はこのようなものをプロットしています。
また、赤い線は 3D 空間で常に上にあるとは限りません。
matplotlib でいくつかの曲線をプロットしようとしています。
しかし、これらの曲線はビューポートから互いに重なり合っているためです。
したがって、ここでは z オーダーだけでは役に立ちません。
matplotlib に深度バッファのような機能があるのだろうか。
私はこのようなものをプロットしています。
また、赤い線は 3D 空間で常に上にあるとは限りません。
3D プロット機能を備えた 2D プロット ライブラリであるため、matplotlib でそのようなことを行うのは難しいと思います。visvis、mayavi、vpython などの実際の 3D プロット ライブラリをお勧めします。たとえば、visvis では、次のような 3D 曲線を作成できます。
import numpy as np
import visvis as vv
app = vv.use()
f = vv.clf()
a = vv.cla()
angle = np.linspace(0, 6*np.pi, 1000)
x = np.sin(angle)
y = np.cos(angle)
z = angle / 6.0
vv.plot(x, y, z, lw=10)
angle += np.pi*2/3.0
x = np.sin(angle)
y = np.cos(angle)
z = angle / 6.0 - 0.5
vv.plot(x, y, z, lc ="r", lw=10)
app.Run()
マヤビ:
import numpy as np
from mayavi import mlab
angle = np.linspace(0, 6*np.pi, 1000)
x = np.sin(angle)
y = np.cos(angle)
z = angle / 6.0
mlab.plot3d(x, y, z, color=(1,0,0), tube_radius=0.1)
angle += np.pi*2/3.0
x = np.sin(angle)
y = np.cos(angle)
z = angle / 6.0 - 0.5
mlab.plot3d(x, y, z, color=(0,0,1), tube_radius=0.1)
mlab.axes()
mlab.show()
この関数を使用してfill_between
、領域に手動で色を付けることができます。ランダムウォーカーの例を参照してください。