我检查了此Matplotlib returning a plot object,但它确实不符合我的问题。
我想做的是:
def func1():
fig1 = plt.plot (np.arange(0.0, 5.0, 0.1))
return fig1
def func2()
return plt.plot (np.arange(0.0, 5.0, 0.02))
fig1 = func1()
fig2 = func2()
plt.figure()
plt.add_subplot(fig1)
plt.add_subplot(fig2)
plt.show()
上面的代码只是一个主要思想。你能建议我怎么做吗?
谢谢
答案 0 :(得分:4)
该想法是让您的函数绘制到一个轴上。您可以将此轴作为函数的参数,或者让它采用当前轴。
import matplotlib.pyplot as plt
import numpy as np
def func1(ax=None):
ax = ax or plt.gca()
line, = ax.plot (np.arange(0.0, 5.0, 0.1))
return line
def func2(ax=None):
ax = ax or plt.gca()
line, = ax.plot (np.arange(0.0, 5.0, 0.02))
return line
fig, (ax1,ax2) = plt.subplots(ncols=2)
func1(ax1)
func2(ax2)
plt.show()