2011-10-14 10 views
10

Mi piacerebbe avere solo la prima lettera di ogni giorno della settimana come l'asse x, cioè M T W T F S S ripetuto. Attualmente è possibile impostare dateTimeLabelFormats, che ho impostato per utilizzare %a, che è la dataFormato per i giorni feriali (Lunedì Mer ecc.). Come posso usare la prima lettera?highcharts datetime x-axis formattazione personalizzata

Ecco il mio codice (sto usando pigri Highcharts in rotaie)

f.xAxis({type: 'datetime', tickInterval: 24*3600*1000, dateTimeLabelFormats: { 
     day: '%a', 
     week: '%a'} 
     }) 

Grazie.

risposta

19

in etichetta -> formattatore per asseX, utilizzare dateFormat funzione per ottenere il mese e quindi utilizzare la funzione di stringa per ottenere la prima lettera e restituire quella lettera come segue -

xAxis: {   
    type: 'datetime', 
    labels: { 
     formatter: function() { 
      var monthStr = Highcharts.dateFormat('%b', this.value); 
      var firstLetter = monthStr.substring(0, 1); 
      return firstLetter; 
     } 
    } 
}, 

See it on jsfiddle

+0

jsfiddle non funziona –

+2

Grazie per l'heads up. Quel violino dipende dalla libreria Highcharts e il link al file js non è più disponibile. Ma trovato il file nel loro nuovo CDN. Ora sta funzionando di nuovo. :) –

+0

Il giorno della settimana (sun.mon ecc.) Può essere aggiunto in qualche modo all'etichetta dell'asse x insieme alla data e al mese ??? – Nisha

Problemi correlati