Ich google einige Zeit ohne Erfolg ... vielleicht sind meine Keywords nur lausig. Wie auch immer, angenommen, ich habe drei 1D numpy.ndarray
s der gleichen Länge, die ich sie in 3D als eine Trajektorie plotten möchte. Außerdem würde Ich mag der Lage sein, eine der beiden folgenden Dinge zu tun:Linienfarbe der parametrischen 3D-Kurve in Pythons matplotlib.pyplot
- ändern die Farbe der Linie als Funktion der
z
- ändern die Farbe der Linie als Funktion der Zeit (dh der Index in den Arrays)
This demo hat ein Beispiel zur Herstellung einer solchen Kurve:
import matplotlib as mpl
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.gca(projection='3d')
theta = np.linspace(-4 * np.pi, 4 * np.pi, 100)
z = np.linspace(-2, 2, 100)
r = z**2 + 1
x = r * np.sin(theta)
y = r * np.cos(theta)
ax.plot(x, y, z)
plt.show()
Aber wie erreiche ich 1
oder 2
? Lösungen zu nur dem einen oder anderen sind willkommen! Vielen Dank im Voraus.
Ich denke, die erste Aussage nicht ganz richtig ist, ist meine Antwort sehen. Aber +1 für die Demonstration von Jet Colormap einschließlich Normalisierung. – Junuxx
Nun, es ist technisch wahr, daher müssen Sie 'N'' line3D' Objekte plotten, aber Ihr Hack ist ziemlich genial :) – askewchan
Awesome, dank euch beiden @Junuxx und askewchan –