Gradazione della data e rotazione in matplotlib

| |

Ho un problema nel tentativo di far ruotare i tick di data in matplotlib. Di seguito è riportato un piccolo programma di esempio. Se provo a ruotare i tick alla fine, i tick non vengono ruotati. Se provo a ruotare i segni di spunta come mostrato sotto il commento "arresto anomalo", la libreria matplot si arresta in modo anomalo.

Questo accade solo se i valori x sono date. Se sostituisco la variabile dates con la variabile t nella chiamata a avail_plot, il xticks(rotation=70) la chiamata funziona perfettamente all'interno di avail_plot.

Qualche idea?

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([]) #crash #plt.xticks(rotation=70) ax2 = ax.twinx() ax2.plot(x , [1 per 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() date=[] for val in t: next_val = start + dt.timedelta(0,val) date.append(next_val) start = next_val avail_plot(axs[0], date, s1, "testing", "green") avail_plot(axs[1], date, s1, "testing2", "red") plt.subplots_adjust (hspace=0, bottom=0.3) plt.yticks([0.5,],("";"")) #non si arresta in modo anomalo, ma non ruota gli xticks #plt.xticks(rotation=70) plt.show ()