По умолчанию, построение набора точек (или любого другого) в 3D с matplotlib
, определяет ось z
по вертикали, как показано здесь (код ниже):
Мне нужно обменивать ось z
и y
, так что ось y
показана вертикально.
Я огляделся, но не нашел способа сказать matplotlib
для этого.
Добавить: Я не хочу прибегать к хакеру, где я меняю данные и метки. Это простой 3-х точечный 3D-график, но мне приходится строить гораздо более сложные поверхности. Я ищу общее решение, а не просто то, что работает с разбросами. Простой способ сказать matplotlib
поместить ось y
вертикально вместо оси z
- это чистый способ сделать это.
MWE
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure()
ax = Axes3D(fig)
ax.scatter([0.2, 0.5, 0.8], [2.3, 0.47, 1.], [2.1, 5.3, 0.7])
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_zlabel('z')
plt.show()