Tôi đã googling khá một thời gian với không thành công ... có lẽ từ khóa của tôi chỉ là tệ hại. Dù sao, giả sử tôi có ba 1D numpy.ndarray
s cùng độ dài tôi muốn vẽ chúng trong 3D dưới dạng quỹ đạo. Hơn nữa, tôi muốn để có thể làm một trong những điều sau đây:Màu đường của đường cong tham số 3D trong python's matplotlib.pyplot
- Thay đổi màu sắc của dòng là một hàm của
z
- Thay đổi màu sắc của dòng như một hàm của thời gian (ví dụ: chỉ số trong mảng)
This demo có một ví dụ về thực hiện một đường cong như:
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()
Nhưng làm cách nào để đạt được 1
hoặc 2
? Giải pháp cho chỉ một hoặc khác được hoan nghênh! Cảm ơn trước.
Tôi nghĩ rằng báo cáo kết quả đầu tiên là không chính xác đúng, xem câu trả lời của tôi. Nhưng +1 để trình diễn bản đồ phản lực bao gồm chuẩn hóa. – Junuxx
Vâng, đó là sự thật về mặt kỹ thuật, do đó bạn phải vẽ các đối tượng 'N'' line3D', nhưng hack của bạn khá tuyệt vời :) – askewchan
Thật tuyệt vời, nhờ bạn cả @Junuxx và askewchan –