2012-06-27 3 views
8

Sto utilizzando JqPlot.JqPlot: imposta un valore di altezza fissa per l'area del grafico senza includere le etichette dell'asse y

L'altezza del grafico dipende dall'altezza del contenitore principale o dal valore predefinito di JqPlot.

Il mio problema è che se l'etichetta y è molto lunga, la dimensione del grafico viene ridotta per adattarsi al contenitore principale.

È possibile impostare un valore di correzione per l'altezza del grafico che non dipende dalla lunghezza del testo dell'etichetta?

mio bisogno: Vorrei visualizzerà sempre la stessa altezza grafico (400px per esempio) non dipendenti dalla etichetta y lunghezza del testo

Ecco un'immagine per descrivere il mio problema:

enter image description here enter image description here

+0

Che cosa si desidera fare: espandere l'altezza del grafico o ridurre l'etichetta. Sembrerebbe che quelle siano le uniche due scelte se capisco cosa stai dicendo. – Terry

+0

Vorrei sempre visualizzare la stessa altezza del grafico (400 px per esempio) non in base alla lunghezza del testo dell'etichetta y – sdespont

risposta

11

L'unica cosa che mi viene in mente è qualcosa in questo modo presented in this sample.
Dopo la chiamata per dipingere il grafico, chiama il codice seguente per ottenere le dimensioni del grafico corrente e regolarlo in accordo ngly aggiungendo la dimensione presa dai div circostanti (ad es. titolo & assi).
In ogni caso, qualsiasi cosa tu abbia impostato per la dimensione del tuo grafico in CSS verrà presa dalla parte grafica del grafico, proprio come lo vuoi tu.

var w = parseInt($(".jqplot-yaxis").width(), 10) + parseInt($("#chart").width(), 10); 
var h = parseInt($(".jqplot-title").height(), 10) + parseInt($(".jqplot-xaxis").height(), 10) + parseInt($("#chart").height(), 10); 
$("#chart").width(w).height(h); 
plot.replot(); 
+1

Semplicemente geniale! – sdespont

+2

Se non si salva la variabile 'trama', si può anche fare: $ ("# chart"). Data ("jqplot"). Replot(); –

Problemi correlati