Już od jakiegoś czasu googlowałem bezskutecznie ... może moje słowa kluczowe są po prostu kiepskie. W każdym razie, przypuśćmy, że mam trzy 1D numpy.ndarray
s tej samej długości, które chciałbym wykreślić w 3D jako trajektorię. Ponadto, chciałbym móc zrobić jedną z następujących rzeczy:Kolor linii krzywej parametrycznej 3D w pytfla matplotlib.pyplot
- zmienić kolor linii w funkcji
z
- zmienić kolor linii w funkcji czasu (tj indeks w tablicach)
This demo posiada przykład wykonania takiego krzywą:
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()
Ale jak uzyskać 1
lub 2
? Rozwiązania tylko jednego lub drugiego są mile widziane! Z góry dzięki.
Myślę, że pierwsze stwierdzenie nie jest do końca poprawne, zobaczyć moją odpowiedź. Ale +1 za demonstrację mapy kolistej, w tym normalizację. – Junuxx
Cóż, jest to prawdą techniczną, dlatego musisz narysować obiekty 'N'' line3D', ale twój hack jest całkiem niezły :) – askewchan
Awesome, dzięki wam zarówno @Junuxx jak i askewchan –