Управление значением альфа на 3D-графике с использованием Python и matplotlib

Я рисую график 3D-рассеяния, используя функцию разброса и mplot3d. Я выбираю один цвет для всех точек графика, но при рисовании matplotlib прозрачность точек устанавливается относительно расстояния от камеры. Есть ли способ отключить эту функцию?

Я пробовал установить альфа-kwarg в None / 1, а также установить vmin / vmax в 1 (в попытке заставить масштабирование цвета быть сплошным одиночным цветом) без везения. Я не видел никаких других возможных вариантов, связанных с этим параметром в документации по разбросу.

Благодаря!

3 Solutions collect form web for “Управление значением альфа на 3D-графике с использованием Python и matplotlib”

Нет аргументов, которые могли бы контролировать это. Вот несколько способов взлома.

Отключите set_edgecolors и set_facecolors , так что mplot3d не сможет обновить альфа-часть цветов:

 from mpl_toolkits.mplot3d import Axes3D import numpy as np import matplotlib.pyplot as plt fig = plt.figure() ax = fig.gca(projection='3d') x = np.random.sample(20) y = np.random.sample(20) z = np.random.sample(20) s = ax.scatter(x, y, z, c="r") s.set_edgecolors = s.set_facecolors = lambda *args:None ax.legend() ax.set_xlim3d(0, 1) ax.set_ylim3d(0, 1) ax.set_zlim3d(0, 1) plt.show() 

введите описание изображения здесь

Если вы хотите set_edgecolors set_facecolors методы set_edgecolors и set_facecolors , вы можете сделать резервную копию этих двух методов, прежде чем отключать их:

 s._set_facecolors, s._set_edgecolors = s.set_facecolors, s.set_edgecolors 

Если вы хотите отключить альфа-настройку, вы можете перезаписать функцию zalpha. Это позволит вам обновлять цвета в случае интерактивного сюжета и по-прежнему удалять туман глубины.

 from mpl_toolkits.mplot3d import * import numpy as np import matplotlib.pyplot as plt plt.ion() art3d.zalpha = lambda *args:args[0] fig = plt.figure() ax = fig.gca(projection='3d') x = np.random.sample(20) y = np.random.sample(20) z = np.random.sample(20) s = ax.scatter(x, y, z, c="r") ax.legend() ax.set_xlim3d(0, 1) ax.set_ylim3d(0, 1) ax.set_zlim3d(0, 1) plt.show() 
 ax.scatter(x, y, z, depthshade=0) 
  • Просмотр в массив numpy?
  • Может ли Numpy's frompyfunc () вернуть изображение?
  • иерархическая кластеризация на корреляциях в Python scipy / numpy?
  • python pandas / numpy Отображение True / False to 1/0
  • выбор строк в numpy ndarray на основе значения двух столбцов
  • Установка порядка данных * по умолчанию * (C против Fortran) в Numpy
  • NumPy dtype проблемы в genfromtxt (), читает строку в виде bytestring
  • Использовать массив numpy в общей памяти для многопроцессорности
  •  
    Interesting Posts for Van-Lav

    структура выборки аргумент-аргумент допустимых значений

    OpenCV – QueryFrame () возвращает старое изображение с веб-камеры

    Максимальное ограничение байтов в обновлении метода модуля Hashlib Python

    Как получить основу сплайна, используемую scipy.interpolate.splev

    Назначение поверхностей зонам на основе трехмерных областей, которые они заключают

    Как проверить последовательности, которые не являются строковыми, используя стандартную библиотеку Python 3

    как вычислить краткое геодезическое расстояние пути матрицы смежности csv ?

    Создание указателя меток и их точечных объектов из графика рассеяния

    Как эффективно извлечь текст из каталога файлов PDF с помощью OCR?

    scons – запуск программы после компиляции

    Потенциальная ошибка Django В QuerySet.query?

    Ошибка при запуске Spark: Исполнитель проиграл

    Как обрабатывать строки юникода Python с нулевым байтом «правильный»?

    Python / Numpy – Получить индекс в основной массив из подмножества

    Какой лучший инструмент для поддержки разработки, управляемой поведением в Python?

    Python - лучший язык программирования в мире.