In Flot, è possibile eliminare o nascondere i segni di spunta della griglia senza eliminare l'etichetta corrispondente?
-
05-07-2019 - |
Domanda
La Documentazione API Flot descrive i ganci estesi della libreria per la personalizzazione degli assi di un grafico. È possibile impostare il numero di tick, il loro colore, ecc. Separatamente per ciascun asse. Tuttavia, non riesco a capire come impedire a Flot di disegnare le linee della griglia verticale senza rimuovere anche le etichette dell'asse x. Ho provato a cambiare le opzioni tickColor, ticks e tickSize senza successo.
Voglio creare meravigliosi grafici compatibili con Tufte come questi:
http://www.robgoodlatte.com/wp-content/uploads/2007/05/tufte_mint .gif http://www.argmax.com/mt_blog/archive/RealGDP_graph.jpg
Trovo che i segni di spunta verticali sui miei grafici siano spazzatura del grafico. Sto lavorando con una serie temporale che sto visualizzando come barre verticali, quindi i segni di spunta verticali spesso tagliano le barre in modo visivamente rumoroso.
Soluzione
Come notato da Laurimann, Flot continua ad evolversi. La possibilità di controllare ciò è stata aggiunta all'API (come indicato nel problema relativo al problema a cui Nelson era collegato).
Se scarichi l'ultima versione (che è ancora etichettata 0.6), puoi disabilitare le linee su un asse con " tickLength " ;, in questo modo:
xaxis: {
tickLength: 0
}
Piuttosto fastidiosamente, questa aggiunta non è stata aggiornata nella documentazione dell'API.
Altri suggerimenti
Questo post termina due anni dopo che OP e Flot (ora versione 0.6) potrebbero essersi evoluti molto in quel periodo o forse ci sono opzioni migliori di quelle in circolazione, ma in entrambi i casi ecco il mio contributo.
Mi sono imbattuto accidentalmente in una soluzione alternativa per questo problema: impostare il canale alfa del colore di tick della griglia su completamente trasparente. Ad esempio:
var options = {
grid: {show: true,
color: "rgb(48, 48, 48)",
tickColor: "rgba(255, 255, 255, 0)",
backgroundColor: "rgb(255, 255, 255)"}
};
Funziona per me.
Dopo aver scavato un po ', sono abbastanza sicuro che non è possibile tramite l'API Flot. Tuttavia, se ti sporchi davvero, potresti farlo: ho pubblicato una versione modificata di un esempio che lo fa. Visualizza sorgente mostra tutta la bruttezza.
Per evitare le zecche nelle opzioni, basta dare le zecche: [] nell'asse corrispondente
A partire da giugno 2009 c'è problema di lancio 167 che è una richiesta per questa funzione esatta. Include due implementazioni e un accordo con l'autore del flott che si tratta di una buona idea.