В Matplotlib есть 3D-библиотека, которую вы могли бы рассмотреть. Добавление %matplotlib notebook
позволяет вам перетащить в нужную ориентацию. Вот пример кода из документации :
%matplotlib notebook
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
u = np.linspace(0, 2 * np.pi, 100)
v = np.linspace(0, np.pi, 100)
x = 10 * np.outer(np.cos(u), np.sin(v))
y = 5 * np.outer(np.sin(u), np.sin(v))
z = 10 * np.outer(np.ones(np.size(u)), np.cos(v))
x1 = 3 * np.outer(np.cos(u), np.sin(v)) + 4
y1 = 5 * np.outer(np.sin(u), np.sin(v)) + 7
z1 = 2 * np.outer(np.ones(np.size(u)), np.cos(v)) + 2
x2 = 5 * np.outer(np.cos(u), np.sin(v)) -11
y2 = 6.6 * np.outer(np.sin(u), np.sin(v)) - 3
z2 = 2 * np.outer(np.ones(np.size(u)), np.cos(v)) + 6
# Plot the surfaces
ax.plot_surface(x, y, z, color='b', alpha = .2)
ax.plot_surface(x1, y1, z1, color='r', alpha = .1)
ax.plot_surface(x2, y2, z2, color='g', alpha = .3)
plt.show()
введите описание изображения здесь