Je rencontre un problème en essayant d'obtenir ma date tiques tourné dans matplotlib. Un petit exemple de programme est ci-dessous. Si j'essaie de faire pivoter les tiques à la fin, les tiques ne pas obtenir de la rotation. Si j'essaie de faire pivoter les tiques, comme indiqué dans le commentaire "se bloque", puis matplot lib se bloque.
Cela se produit uniquement si les valeurs de x sont des dates. Si je remplace la variable "date" avec la variable " t " dans l'appel à avail_plot, le xticks(rotation=70) appel fonctionne très bien à l'intérieur de avail_plot.
Des idées?
import numpy as np
import matplotlib.pyplot as plt
import datetime as dt
def avail_plot(ax, x, y, label, lcolor):
ax.plot(x,y,'b')
ax.set_ylabel(label, rotation='horizontal', color=lcolor)
ax.get_yaxis().set_ticks([])
#crashes
#plt.xticks(rotation=70)
ax2 = ax.twinx()
ax2.plot(x, [1 for a in y], 'b')
ax2.get_yaxis().set_ticks([])
ax2.set_ylabel('testing')
f, axs = plt.subplots(2, sharex=True, sharey=True)
t = np.arange(0.01, 5, 1)
s1 = np.exp(t)
start = dt.datetime.now()
dates=[]
for val in t:
next_val = start + dt.timedelta(0,val)
dates.append(next_val)
start = next_val
avail_plot(axs[0], dates, s1, 'testing', 'green')
avail_plot(axs[1], dates, s1, 'testing2', 'red')
plt.subplots_adjust(hspace=0, bottom=0.3)
plt.yticks([0.5,],("",""))
#doesn't crash, but does not rotate the xticks
#plt.xticks(rotation=70)
plt.show()