Как установить цвет фона сюжета в Matplotlib

  1. Установить цвет фона конкретного участка
  2. Установить цвет фона по умолчанию для нескольких участков

set_facecolor (color) объекта axes устанавливает фон или, другими словами, цвет лица соответствующего графика.

Matplotlib Установить цвет фона сюжета Цвет фона

Установить цвет фона конкретного участка

Нам нужно получить объект axes перед вызовом метода set_facecolor().

1. Matlab-alike stateful API

plt.plot(x, y)
ax = plt.gca()

Полные примеры кодов:

import matplotlib.pyplot as plt

plt.plot(range(5), range(5, 10))

ax = plt.gca()
ax.set_facecolor('m')
plt.show()

2. Создать рисунок и ось в объектно-ориентированном методе

Объекты figure и axes могут быть созданы вместе,

fig, ax = plt.subplots()

Или сначала создайте figure, а затем инициируйте axes.

fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)

Полные примеры кодов:

import matplotlib.pyplot as plt

fig, ax = plt.subplots(1)

ax.plot(range(5), range(5, 10))

ax.set_facecolor('m')
plt.show()

Или,

import matplotlib.pyplot as plt

fig = plt.figure()
ax = fig.add_subplot(1, 1, 1)

ax.plot(range(5), range(5, 10))

ax.set_facecolor('m')
plt.show()

Установить цвет фона по умолчанию для нескольких участков

Если нам нужно установить цвет фона по умолчанию для нескольких участков, мы можем установить свойство axes.facecolor в объекте rcParams.

plt.rcParams['axes.facecolor'] = color

Полные примеры кодов:

import matplotlib.pyplot as plt

plt.rcParams['axes.facecolor'] = 'm'

plt.subplot(1,2, 1)
plt.plot(range(5), range(5, 10))

plt.subplot(1,2, 2)
plt.plot(range(5), range(10, 5, -1))

plt.show()

Matplotlib Установить цвет фона участка Цвет фона_rcParams

Как видите, цвет фона двух графиков одинаков.

Сопутствующая статья - Matplotlib rcParams

comments powered by Disqus