Spec-Zone.ru › Matplotlib 3.8

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 v1.1.0 есть полуофициальный способ изменения этих параметров. Подробнее см. примечание в разделе mplot3d.axis3d документации API mplot3d.

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

Spec-Zone.ru

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