Несколько графиков в matplotlib с функцией, возвращающей график - PullRequest
1 голос
/ 06 ноября 2019

Предположим, у меня есть:

import matplotlib.pyplot as plt

def generate_plot(data):
    plt.plot(...)
    return plt

мы предполагаем, что _data является итеративным с длиной 4.

if "__name__" = "__main__":
   _data = ....
   plt.figure(1)
   for data_i, index in _data, range(4):
       plt.subplot(2,2,index+1)
       ??????? <---- what goes here?

   plt.savefig(...)

Можно ли вызвать generate_plot таким образом, чтобы построенный график был помещен в индекс позиции? Если да, то как?

Если честно, я не совсем понимаю, как работает объект plt в Matplotlib.

1 Ответ

0 голосов
/ 06 ноября 2019

Вы не хотите return plt. Вы можете думать о plt просто как о способе доступа ко всем объектам построения графиков в matplotlib, а не как о «объекте графика». Сначала сгенерируйте свои данные, затем постройте их. Скажем, например, у меня есть

import numpy as np
import matplotlib.pyplot as plt

def generate_data():
    return np.random.randint(10, size=10)

plt.figure(1)
for i in range(4):
    plt.subplot(2, 2, i + 1)
    plt.plot(generate_data())

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