2013-06-25 16 views
5

Vorrei nascondere le etichette delle tacche principali sull'asse x mantenendo solo le etichette minori. L'idea è che le mie date vengano visualizzate tra i tick principali anziché su di loro per impostazione predefinita. Ho visto alcune altre risposte a domande simili come questa e ho provato a usare il loro modo di nascondere le principali zecche, ma non ho molta fortuna a farlo funzionare. Il mio grafico attualmente si presenta così:Nascondere le etichette delle tacche principali mentre si visualizzano le etichette delle tacche secondarie in matplotlib

Major and minor ticks for November

Questo è il codice di formattazione Inizialmente avevo per il mio grafico prima ho deciso che volevo mettere le etichette sulle zecche minori.

day_fmt = '%d' 
myFmt = mdates.DateFormatter(day_fmt) 
ax.xaxis.set_major_formatter(myFmt) 
ax.xaxis.set_major_locator(matplotlib.dates.DayLocator(interval=1))  

ho cercato di ottenere le zecche minori di presentarsi mentre si nascondeva principali zecche usando il codice seguente. Qui ho usato un localizzatore un'ora alle 12 per ottenere il punto di mezzo di una giornata:

import matplotlib.ticker 
ax.xaxis.set_major_formatter(ticker.NullFormatter()) #Clear major tick labels 
ax.xaxis.set_minor_formatter(myFmt) 
ax.xaxis.set_minor_locator(matplotlib.dates.HourLocator(interval=12)) 

Ma per qualche ragione ho grafici che sembrano l'immagine qui sopra - con maggiori e minori etichette delle tacche asse x . Ho anche provato a cancellare i tick indesiderati usando ax.set_xticks([]). Qualcuno ha avuto problemi simili e ha risolto questo problema o conosciuto un modo per superare questo?

risposta

6

Si potrebbe provare

import matplotlib.pyplot as plt 

... 
plotting nitty gritty 
... 

plt.setp(ax.get_xmajorticklabels(), visible=False) 
plt.show() 
+0

cosa vuol 'setp()' fare? –

+0

['setp (oggetto, attributo = valore)'] (http://matplotlib.org/api/_as_gen/matplotlib.artist.setp.html#matplotlib.artist.setp) può essere usato per * impostare * l'attributo di 'oggetto' a' valore'. – wflynny

Problemi correlati