I checked this SO Matplotlib returning a plot object but it does not really fit to my question.
What I would like to do is:
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()
The above code is just a main idea. Could you suggest me how to do?
Thanks
The idea would be to let your functions plot to an axes. Either you provide this axes as argument to the function or you let it take the current axes.
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()
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.