Как изменить цвет фона?

Я делаю разброс в matplotlib и должен изменить фон фактического графика на черный. Я знаю, как изменить цвет лица сюжета, используя:

fig = plt.figure() fig.patch.set_facecolor('black') 

Моя проблема заключается в том, что это меняет цвет пространства вокруг сюжета. Как изменить фактический цвет фона сюжета?

5 Solutions collect form web for “Как изменить цвет фона?”

Если у вас уже есть объект axes , например, если вы использовали f, ax = plt.subplot() или plt.subplots() , или можете просто получить текущие оси с помощью ax = plt.gca() , вы можете напрямую использовать его метод, set_facecolor :

 ax.set_facecolor('red') ax.set_facecolor((1, 0, 0)) 

Что-то вроде этого? Используйте ключевое слово axisbg для subplot :

 >>> from matplotlib.figure import Figure >>> from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas >>> figure = Figure() >>> canvas = FigureCanvas(figure) >>> axes = figure.add_subplot(1, 1, 1, axisbg='red') >>> axes.plot([1,2,3]) [<matplotlib.lines.Line2D object at 0x2827e50>] >>> canvas.print_figure('red-bg.png') 

(Конечно, не разброс, а не черный фон.)

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

Если у вас уже есть объект axes , как и в ответе Nick T , вы также можете использовать

  ax.patch.set_facecolor('black') 

Один из методов заключается в том, чтобы вручную установить значение по умолчанию для цвета фона оси в вашем скрипте (см. Настройка matplotlib ):

 import matplotlib.pyplot as plt plt.rcParams['axes.facecolor'] = 'black' 

Это контрастирует с методом Nick T, который изменяет цвет фона для конкретного объекта axes . Сброс настроек по умолчанию полезен, если вы создаете несколько разных графиков со схожими стилями и не хотите изменять разные объекты axes .

Примечание: эквивалент для

 fig = plt.figure() fig.patch.set_facecolor('black') 

от вашего вопроса:

 plt.rcParams['figure.facecolor'] = 'black' 

Одно из предложений в других ответах – использовать ax.set_axis_bgcolor("red") . Однако это обесценивается.

Также предлагается использовать ax.patch.set_facecolor("red") . Хотя это прекрасно работает, еще более простым решением является использование

ax.set_facecolor("red")

  • получить соотношение сторон осей
  • Как я могу избавиться от ошибки импорта ft2font из matplotlib в исходной установке Windows XP?
  • python seaborn для возврата обратно в matplotlib
  • добавить строку на основе наклона и перехвата в matplotlib?
  • почему заговор с Matplotlib так медленно?
  • Как получить тот же шрифт (-style, -size и т. Д.) В выходе matplotlib, как и в выходе латекса?
  • наложение базовой карты на контуры
  • Как отключить перспективу в mplot3d?
  •  
    Interesting Posts for Van-Lav

    Как оценить, сколько памяти потребуется DataFrame Pandas?

    Как получить доступ к массиву numpy с набором индексов, хранящихся в другом массиве numpy?

    Ошибка при запуске носетистов

    Paramiko Не удается загрузить большие файлы> 1GB

    Поиск индекса N самых больших элементов в массиве Python / Список эффективно

    Почему у меня нет xlrd?

    почему мы вызываем печать после импорта print_function (в Python 2.6)

    Есть ли эквивалент __repr__ для javascript?

    Альтернативный метод сравнения исходного изображения с отредактированным, который может не нуждаться в оригинале

    numpy.getbuffer вызывает AttributeError: объект 'module' не имеет атрибута 'getbuffer'

    Установка локальных переменных в функцию вместо использования глобальных переменных оптимизирует функцию

    Любой опыт работы с протокольными буферами?

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

    Как работает объект classmethod?

    Возможно ли, чтобы кадр данных pandas отображался в новом окне?

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