Il problema qui è che c'è una classe in formato zecche, e plot_date imposta quella classe a qualcosa che non si vuole: un formattatore automatico che mai traccia millisecondi.
Per modificare questo, è necessario passare da matplotlib.dates.AutoDateFormatter al proprio formattatore. matplotlib.dates.DateFormatter (fmt) crea un formattatore con una stringa di formato datetime.strftime. Non sono sicuro di come farlo mostrare millisecondi, ma mostrerà microsecondi, che spero funzionino per te; è solo uno zero in più, dopo tutto. Prova questo codice:
dates = matplotlib.dates.datestr2num(x_values) # convert string dates to numbers
plt.plot_date(dates, y_values) # doesn't show milliseconds by default.
# This changes the formatter.
plt.gca().xaxis.set_major_formatter(matplotlib.dates.DateFormatter("%H:%M:%S.%f"))
# Redraw the plot.
plt.draw()
hey, inserisci un codice che mostri cosa stai facendo. In questo modo è un po 'più facile da aiutare, evviva. – fraxel
Potrebbe essere necessario aggiungere qualche qualificatore per definire il numero di posizioni decimali visualizzate, ad esempio% .2f. Tuttavia, senza vedere più del tuo codice, è difficile sapere. – cosmosis
potresti, per favore, postare un esempio? grazie – Bob