2010-12-09 21 views
2

Par Flot par défaut a été généré bloc de légende (tableau) comme celui-ci ([#] - boîte de couleur):besoin d'aide dans la légende jQuery.Flot mise en forme

_________________ 
|_[#]_|_label_1_| 
|_[#]_|_label_2_| 
|_..._|_......._| 

Je veux avoir la légende horizontale comme ceci:

______________________________.______________________________ 
|_[#]_|_My_long_label_1_______|_[#]_|_My_another_label_2____| 
|_[#]_|_Trololo_label_here____|_[#]_|_hell,_yeah!___________| 
............................................................. 

J'ai essayé l'utilisation labelFormatter(), mais ont échoué = (

I a été ajouté le numéro de commande à chaque élément de la série et peut l'utiliser dans labelFormatter() (comme si ... (series.num % 2 == 0) {... la rangée suivante ...}

Répondre

1

Malheureusement, il ne fonctionne pas de cette façon ...

Flot ne vous permet de gérer la façon dont les Fabergé, pas la structure de toute la légende elle-même. Voir le source pour savoir comment il construit la table.

Là, vous remarquerez qu'il ne fait que construire une table html et inclut vos étiquettes dans la cellule appropriée.

Votre meilleur choix, étant donné que les informations sont à créer soi-même à la main, et supprimer complètement la génération de la légende par défaut (show:false). Vous pouvez facilement prendre la fonction insertLegend de la source de flot et créer votre propre version qui les empile horizontalement.

+0

Merci, je vais essayer – VeroLom

12

Essayez de suivre,

legend: { 
     show: true, 
     noColumns:2, 
     container:$("#graph_legend") 

    } 
+0

Bon point, les nouvelles versions de colonnes de support Flot! Savez-vous quand ce changement a été introduit? – Ryley