Измените стиль в одной фигуре Matplotlib при работе с несколькими фигурами одновременно - PullRequest
0 голосов
/ 03 июля 2018

Допустим, у меня есть 2 фигуры Matplotlib одновременно, которые обновляются в цикле for. Одна из фигур (скажем, fig0 имеет изображения, а fig1 - линейный график). Я бы хотел, чтобы fig0 имел стандартный стиль Matplotlib, тогда как в fig1 я бы хотел установить plt.style.use('ggplot') для fig1.

Пока я пробовал это:

plt.style.use('ggplot')

fig0 = plt.figure(0)
fig1 = plt.figure(1)

for i in range(10):
    # print stuff in both figures

Но это задает стиль ggplot на обеих фигурах (как и ожидалось). Я не смог найти способ отдельно установить стиль на каждом рисунке.

1 Ответ

0 голосов
/ 03 июля 2018

Это решило бы это, за исключением цикла.

import matplotlib.pyplot as plt

with plt.style.context('ggplot'):
    plt.figure(0)
    plt.plot([3,2,1])
with plt.style.context('default'):
    plt.figure(1)
    plt.plot([1,2,3])

plt.show()

В любом случае, вам, вероятно, будет лучше без цикла ... если цикл по какой-то причине не является абсолютно необходимым. Просто сохраните все, что вы добавляете в графики в списках, и измените приведенный выше пример.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...