Spec-Zone.ru › Matplotlib 3.5

mplot3d FAQ

Как mplot3d отличается от Mayavi?

Mayavi — это очень мощная и функциональная библиотека для 3D графики. Для сложных 3D сцен и отличных возможностей визуализации рекомендуется использовать Mayavi.

mplot3d предназначен для того, чтобы пользователи могли создавать простые 3D графики с тем же «визуальным стилем», что и 2D графики matplotlib. Кроме того, пользователи могут использовать один и тот же инструмент для генерации как 2D, так и 3D графиков.

Мой 3D график выглядит неправильно под определёнными углами обзора

Это, вероятно, самая распространённая проблема с mplot3d. Проблема в том, что под определёнными углами обзора 3D объект может казаться расположенным спереди другого объекта, хотя он физически находится позади него. Это может приводить к графикам, которые выглядят не «физически правильно».

К сожалению, хотя и ведутся работы по уменьшению частоты появления этого артефакта, эта проблема пока не решена и не может быть полностью решена до тех пор, пока matplotlib не будет поддерживать рендеринг 3D графики в своей основе.

Проблема возникает из-за сведения 3D данных до 2D + скаляра z-порядка. Одно значение представляет третью размерность для всех частей 3D объектов в коллекции. Поэтому, когда области ограничительных прямоугольников двух коллекций пересекаются, возникает возможность появления этого артефакта. Кроме того, пересечение двух 3D объектов (например, полигонов или областей) не может быть правильно отображено в 2D-рендере matplotlib.

Эта проблема вряд ли будет решена до тех пор, пока OpenGL не будет добавлен ко всем бэкендам (патчи приветствуются). До тех пор, если вам нужны сложные 3D сцены, мы рекомендуем использовать MayaVi.

Мне не нравится расположение 3D графика, как его изменить?

Исторически mplot3d страдал от жёсткого кодирования параметров, используемых для управления визуальными элементами, такими как интервал меток, длина делений и ширина линий сетки. Ведутся работы по устранению этой проблемы. Для matplotlib версии 1.1.0 существует полуофициальный способ изменения этих параметров. Более подробную информацию см. в примечании раздела mplot3d.axis3d документации API mplot3d.

© 2012–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.7.5/api/toolkits/mplot3d/faq.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API