Python 3.6。我不明白为什么我的阴谋在网格的每个部分都被如此粉碎。宽度没问题,它们被我想要的两个卡住,每个块之间的空间也可以。但我没有找到改变y轴大小的方法。
这是我的代码:
def graphiqueLigneDate(listeDates, listeOrdonnees, nomOrdonnees, axe, labelLigne):
# -- Variables utiles
listeTicks = []
step = 5
for i in range(int(len(listeDates)/step)+1):
listeTicks.append(listeDates[step*i][:-5])
# -- Configurer graphique ---
axe.plot([i for i in range(1,len(listeDates)+1)], listeOrdonnees, label = labelLigne)
axe.set_ylabel(nomOrdonnees)
axe.set_xlabel('Date')
axe.set_xticks([i for i in range(1,len(listeDates)+1,5)])
axe.set_xticklabels(listeTicks)
axe.legend()
fig = plt.figure(figsize=(6,5))
fig.suptitle('Volume vs Prix', size=18)
plt.subplots_adjust(top=0.9, wspace=0.1, hspace=0.5)
nbreDeMots = len(listeMots)
heightRatiosListe = [1] * nbreDeMots
grille = gridspec.GridSpec(nbreDeMots, 2, height_ratios = heightRatiosListe)
i = 0
for mot in listeMots:
gs = gridspec.GridSpecFromSubplotSpec(2, 1, subplot_spec = grille[i], hspace = 0)
j = 0
for cellule in gs:
ax1 = fig.add_subplot(cellule)
if j % 2 == 0:
ax1.tick_params(axis='x',which='both', direction='in' , bottom='on',top='off', labelbottom='off')
ax1.set_ylabel('Volume')
ft.graphiqueLigneDate(listeBonnesDates, dicoVolume[mot], 'Volume Tweet', ax1, mot)
else:
ax1.set_xlabel('Date')
ax1.set_ylabel('Prix')
ft.graphiqueLigneDate(listeBonnesDates, dicoSpot[mot], 'Volume Tweet', ax1, mot)
j += 1
i +=1
fig.tight_layout()
fig.show()
谢谢!