我试图创建一个包含9个子图的绘图,并使用for循环为它们创建标题,以避免必须指定9次标题。然而,我的代码适用于前8个子图但不适用于最后一个。请帮帮我。
from scipy.stats import beta
import matplotlib.pyplot as plt
import numpy as np
a=[1,10,20,30,40,50,60,70,80,90]
b=[1,10,20,30,40,50,60,70,80,90]
x = np.linspace(0.001,0.999, num=100)
for i in range(9):
plt.title('alpha=' + str(a[i])+' beta= ' + str(b[i]))
plt.subplot(3, 3, i+1)
plt.plot(x, beta.pdf(x, a[i], b[i]),'r-', lw=3, alpha=0.6, label='beta pdf')
plt.xticks(np.arange(0, 1.5, 0.5))
plt.yticks(np.arange(0, 13, 6.0))
plt.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=None, hspace=0.4)
plt.show()
plt.title
和plt.subplot
行的顺序交换(即将plt.subplot
行放在plt.title
行之前)。 - Charlie Haley