Функции Python, которые возвращают оси Matplotlib - как объединить их все в одну фигуру? - PullRequest
0 голосов
/ 29 июня 2018

Допустим, я создал функции, которые возвращают объект оси. Например, скажем график функции синуса и косинуса.

def func1():
    fig, ax = plt.subplots()
    x = np.linspace(0, 2*np.pi)
    ax.plot(x, np.sin(x))
    return ax

def func2():
    fig, ax = plt.subplots()
    x = np.linspace(0, 2*np.pi)
    ax.plot(x, np.cos(x))
    return ax

Эти функции, конечно, возвращают следующие графики:

enter image description here enter image description here

Как я могу объединить два в одну фигуру, которая будет эквивалентна следующему коду и изображению?

fig, ax = plt.subplots()
xs = np.linspace(0, 2 * np.pi)
ax.plot(x, np.cos(x))
ax.plot(x, np.sin(x))
plt.show()

enter image description here

То есть я могу сделать что-то вроде псевдокода ниже?

ax1 = func1()
ax2 = func2()

fig = plt.figure()
fig.append_axes(ax1)
fig.append_axes(ax2)

plt.show()

1 Ответ

0 голосов
/ 30 июня 2018

Вот простое решение:

def func1():
    x = np.linspace(0, 2*np.pi)
    plt.plot(x, np.sin(x))

def func2():
    x = np.linspace(0, 2*np.pi)
    plt.plot(x, np.cos(x))


func1()
func2()

Выход: enter image description here

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