Мне хотелось бы построить сюжет в том стиле, в котором мы привыкли их рисовать в школе. Вот пример:

Резюме:
[*]3D-график [*]плоскость y-z параллельна экрану (горизонтальная y, вертикальная z) [*]ось X диагональна
Ось Y-Z параллельна экрану (горизонтальная y, вертикальная z). Обычно ось X теперь указывает на экран. Но я хотел бы изменить это так, чтобы она была направлена по диагонали вниз (как если бы ее рисовали на лист бумаги иногда). К сожалению, я не знаю, как называется эта проекция (косое изображение), но я почти уверен, что она ортогональна и что мне нужна какая-то дополнительная проекция.
Я попробовал это с собственной проекцией для оси, вот так:
импортировать numpy как np импортировать matplotlib.pyplot как plt из mpl_toolkits.mplot3d импортировать Axes3D рис = plt.figure() ax = fig.add_subplot(111, проекция='3d', proj_type='орто') # Некоторые примеры данных x, y, z = np.random.rand(3, 100) ax.scatter(x, y, z) # Применяем преобразование ax.get_proj = лямбда: np.dot(Axes3D.get_proj(ax), Transform) # Установите метки и просмотрите ax.view_init(высота=0, азим=0) ax.set_xlabel('x') ax.set_ylabel('y') ax.set_zlabel('z') # Матрица ручного преобразования c = np.cos(np.deg2rad(30)) s = np.sin(np.deg2rad(30)) преобразование = np.array([ [1, 0, 0, 0], [0, с, -с, 0], [0, с, с, 0], [0, 0, 0, 1] ]) # Применяем преобразование ax.get_proj = лямбда: np.dot(Axes3D.get_proj(ax), Transform) plt.show() Это мой результат (пока не очень впечатляющий

Как мне исправить это, чтобы оно выглядело как куб?
Мобильная версия