我还没有能够找到一个解决这个问题的方法...假设我定义了一些绘图函数,这样我就不必复制粘贴吨的代码,每次我做类似的绘图...
我想做的是使用这个函数来创建几个不同的图,然后把它们放在一起作为一个图的子图。这是可能的吗?我已经尝试了以下方法,但它只返回空白:
import numpy as np
import matplotlib.pyplot as plt
# function to make boxplots
def make_boxplots(box_data):
fig, ax = plt.subplots()
box = ax.boxplot(box_data)
#plt.show()
return ax
# make some data:
data_1 = np.random.normal(0,1,500)
data_2 = np.random.normal(0,1.1,500)
# plot it
box1 = make_boxplots(box_data=data_1)
box2 = make_boxplots(box_data=data_2)
plt.close('all')
fig, ax = plt.subplots(2)
ax[0] = box1
ax[1] = box2
plt.show()
1条答案
按热度按时间xqk2d5yq1#
我倾向于使用以下模板
然后,您可以通过简单地调用
plot_something(my_data)
来试验您的绘图函数,并且可以像这样指定要使用的轴。添加
kwargs
允许您向绘图函数传递任意参数,如标签、线条样式或颜色。ax = ax or plt.gca()
行使用您指定的轴或从matplotlib获取当前轴(如果您尚未创建任何轴,则可能是新轴)。