Вам нужен обычный импорт, плюс 3D-инструментарий
import matplotlib as mpl
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
import matplotlib.pyplot as plt
Вам нужен включенный 3D axes
объект
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
Вам нужен круг, содержащийся в плоскости yz
theta = np.linspace(0, 2 * np.pi, 201)
y = 10*np.cos(theta)
z = 10*np.sin(theta)
теперь мы можем построить исходный круг и, например, несколько кругов, повернутых вокруг оси z и центры которых также расположенына фиксированном расстоянии (равном радиусу окружности) от оси z , так что они касаются его
for i in range(18):
phi = i*np.pi/9
ax.plot(y*np.sin(phi)+10*np.sin(phi),
y*np.cos(phi)+10*np.cos(phi), z)
в конечном итоге мы размещаем вертикальную ось и легенду
ax.plot((0,0),(0,0), (-10,10), '-k', label='z-axis')
ax.legend()
Пора посмотреть, что мы получили
plt.show()
